<SEC-DOCUMENT>0001654954-25-005149.txt : 20250506
<SEC-HEADER>0001654954-25-005149.hdr.sgml : 20250506
<ACCEPTANCE-DATETIME>20250506171647
ACCESSION NUMBER:		0001654954-25-005149
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		100
CONFORMED PERIOD OF REPORT:	20250331
FILED AS OF DATE:		20250506
DATE AS OF CHANGE:		20250506

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			Crexendo, Inc.
		CENTRAL INDEX KEY:			0001075736
		STANDARD INDUSTRIAL CLASSIFICATION:	TELEPHONE COMMUNICATIONS (NO RADIO TELEPHONE) [4813]
		ORGANIZATION NAME:           	06 Technology
		EIN:				870591719
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

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

	BUSINESS ADDRESS:	
		STREET 1:		1615 S. 52ND STREET
		CITY:			TEMPE
		STATE:			AZ
		ZIP:			85281
		BUSINESS PHONE:		8012270004

	MAIL ADDRESS:	
		STREET 1:		1615 S. 52ND STREET
		CITY:			TEMPE
		STATE:			AZ
		ZIP:			85281

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	IMERGENT INC
		DATE OF NAME CHANGE:	20020710

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	NETGATEWAY INC
		DATE OF NAME CHANGE:	19990527
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>cxdo_10q.htm
<DESCRIPTION>FORM 10-Q
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<html xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:currency="http://xbrl.sec.gov/currency/2024" xmlns="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:us-roles="http://fasb.org/us-roles/2024" xmlns:country="http://xbrl.sec.gov/country/2024" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:srt-types="http://fasb.org/srt-types/2024" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:srt="http://fasb.org/srt/2024" xmlns:us-gaap="http://fasb.org/us-gaap/2024" xmlns:ecd="http://xbrl.sec.gov/ecd/2024" xmlns:ffd="http://xbrl.sec.gov/ffd/2024q2" xmlns:cxdo="http://cxdo.com/20250331"><head><title>cxdo_10q.htm</title><!--Document Created by XBRLMaster--><meta http-equiv="Content-Type" content="text/html"/></head><body style="text-align:justify;font:10pt times new roman"><div style="display:none;text-align:justify;font:10pt times new roman;" id="XBRLDIV"><ix:header><ix:hidden><ix:nonNumeric name="dei:EntityCentralIndexKey" contextRef="From2025-01-01to2025-03-31" id="ixv-14311">0001075736</ix:nonNumeric><ix:nonNumeric name="dei:AmendmentFlag" contextRef="From2025-01-01to2025-03-31" format="ixt:booleanfalse" id="ixv-14312">false</ix:nonNumeric><ix:nonNumeric name="dei:CurrentFiscalYearEndDate" contextRef="From2025-01-01to2025-03-31" id="ixv-14313">--12-31</ix:nonNumeric><ix:nonNumeric name="dei:DocumentFiscalPeriodFocus" contextRef="From2025-01-01to2025-03-31" id="ixv-14314">Q1</ix:nonNumeric><ix:nonNumeric name="dei:DocumentFiscalYearFocus" contextRef="From2025-01-01to2025-03-31" id="ixv-14315">2025</ix:nonNumeric><ix:nonNumeric name="dei:Security12bTitle" contextRef="From2025-01-01to2025-03-31" id="ixv-14316">Common Stock, par value $0.001 per share</ix:nonNumeric><ix:nonFraction name="us-gaap:PreferredStockParOrStatedValuePerShare" contextRef="AsOf2024-12-31" unitRef="USDPShares" decimals="INF" id="ixv-14317">0.001</ix:nonFraction><ix:nonFraction name="us-gaap:PreferredStockSharesAuthorized" contextRef="AsOf2024-12-31" unitRef="Shares" decimals="0" id="ixv-14318">5000000</ix:nonFraction><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" contextRef="AsOf2024-12-31" unitRef="Shares" decimals="0" id="ixv-14319">0</ix:nonFraction><ix:nonFraction name="us-gaap:PreferredStockSharesIssued" contextRef="AsOf2025-03-31" unitRef="Shares" decimals="0" id="ixv-14320">0</ix:nonFraction><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" contextRef="AsOf2024-12-31" unitRef="USDPShares" decimals="INF" id="ixv-14321">0.001</ix:nonFraction><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" contextRef="AsOf2024-12-31" unitRef="Shares" decimals="0" id="ixv-14322">50000000</ix:nonFraction><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="AsOf2024-12-31" unitRef="Shares" decimals="0" id="ixv-14323">27621557</ix:nonFraction><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" contextRef="AsOf2025-03-31" unitRef="Shares" decimals="0" id="ixv-14324">28990386</ix:nonFraction><ix:nonFraction name="cxdo:AccountsReceivableConcentrationRiskPercentage" contextRef="From2024-01-01to2024-12-31" unitRef="Pure" decimals="INF" id="ixv-14325">0.1</ix:nonFraction><ix:nonFraction name="cxdo:RevenueConcentrationRiskPercentage" contextRef="From2024-01-01to2024-03-31" unitRef="Pure" decimals="INF" id="ixv-14326">0.1</ix:nonFraction><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsGross" contextRef="AsOf2024-12-31_us-gaap_CustomerRelationshipsMember" unitRef="USD" decimals="0" id="ixv-14327">26073000</ix:nonFraction><ix:nonFraction name="cxdo:GoodwillBeginningBalance" contextRef="AsOf2024-12-31" unitRef="USD" decimals="0" id="ixv-14328">9454000</ix:nonFraction><ix:nonFraction name="cxdo:DeferredTaxAssetValuationAllowance" contextRef="AsOf2024-12-31" unitRef="USD" decimals="0" id="ixv-14329">5417000</ix:nonFraction><ix:nonFraction name="cxdo:DeferredTaxesRealizableAmount" contextRef="AsOf2024-12-31" unitRef="USD" decimals="0" id="ixv-14330">5417000</ix:nonFraction></ix:hidden><ix:references><link:schemaRef xlink:type="simple" xlink:href="cxdo-20250331.xsd"/></ix:references><ix:resources><xbrli:context id="From2025-01-01to2025-03-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">cxdo:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_InternationalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">cxdo:InternationalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_country_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_country_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_ProductMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_ProductMember_cxdo_SoftwareSolutionSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_ProductMember_cxdo_CloudTelecommunicationsServiceSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_SoftwareDevelopmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_SoftwareSolutionSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_CloudTelecommunicationsServiceSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_ServiceMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_ServiceMember_cxdo_SoftwareSolutionSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_ServiceMember_cxdo_CloudTelecommunicationsServiceSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_ProductMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_ProductMember_cxdo_SoftwareSolutionSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_ProductMember_cxdo_CloudTelecommunicationsServiceSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_SoftwareDevelopmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_SoftwareSolutionSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_CloudTelecommunicationsServiceSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_ServiceMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_ServiceMember_cxdo_SoftwareSolutionSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_ServiceMember_cxdo_CloudTelecommunicationsServiceSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_OracleMemberMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cxdo:OracleMemberMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_OracleMemberMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cxdo:OracleMemberMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-02-01to2024-02-29_cxdo_OracleMemberMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cxdo:OracleMemberMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-02-01</xbrli:startDate><xbrli:endDate>2024-02-29</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_DecemberThirtyOneTwoThousandTwentyFourMember_cxdo_BonusPlanMember_cxdo_BoardOfDirectorsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:DecemberThirtyOneTwoThousandTwentyFourMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:BonusPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cxdo:BoardOfDirectorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_OracleMemberMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cxdo:OracleMemberMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-03-31_cxdo_OracleMemberMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cxdo:OracleMemberMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_OtherOperatingLeasesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:OtherOperatingLeasesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_OtherOperatingLeasesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:OtherOperatingLeasesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_MichiganLasVegasMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:MichiganLasVegasMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_MichiganLasVegasMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:MichiganLasVegasMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_OverlandParkKansasMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:OverlandParkKansasMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_OverlandParkKansasMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:OverlandParkKansasMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_SanDiegoCaliforniaMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:SanDiegoCaliforniaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_SanDiegoCaliforniaMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:SanDiegoCaliforniaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_RestonVirginiaMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:RestonVirginiaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_RestonVirginiaMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:RestonVirginiaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_TempeArizoneMember_cxdo_OctoberTwoThousandTwentyFourMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:TempeArizoneMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:OctoberTwoThousandTwentyFourMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_TempeArizoneMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:TempeArizoneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember_cxdo_OctoberTwoThousandTwentyFourMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:TempeArizoneMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:OctoberTwoThousandTwentyFourMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:TempeArizoneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_BottomMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:BottomMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_srt_ScenarioPreviouslyReportedMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:CarryingReportedAmountsFairValueDisclosureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:EstimateOfFairValueFairValueDisclosuresMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:CarryingReportedAmountsFairValueDisclosureMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:EstimateOfFairValueFairValueDisclosuresMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cxdo:AllegiantNetworksBusinessAcquisitionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:NovemberOneTwoThousandTwentyTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cxdo:AllegiantNetworksBusinessAcquisitionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:NovemberOneTwoThousandTwentyTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:OnFebruaryTwentySevenTwoThousandTwentyThreeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:OnFebruaryTwentySevenTwoThousandTwentyThreeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cxdo:AllegiantNetworksBusinessAcquisitionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:NovemberOneTwoThousandTwentyTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2022-11-01_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cxdo:AllegiantNetworksBusinessAcquisitionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:NovemberOneTwoThousandTwentyTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-11-01</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="From2022-10-30to2022-11-01_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cxdo:AllegiantNetworksBusinessAcquisitionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:NovemberOneTwoThousandTwentyTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-10-30</xbrli:startDate><xbrli:endDate>2022-11-01</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cxdo:AllegiantNetworksBusinessAcquisitionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:NovemberOneTwoThousandTwentyTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_GeneralAndAdministrativeExpenseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_GeneralAndAdministrativeExpenseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_SellingAndMarketingExpenseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_SellingAndMarketingExpenseMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsRevenueMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">cxdo:SoftwareSolutionsRevenueMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsRevenueMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">cxdo:SoftwareSolutionsRevenueMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_TotalacquiredintangibleassetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:TotalacquiredintangibleassetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_cxdo_TotalacquiredintangibleassetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:TotalacquiredintangibleassetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_TrademarkAndTradeNamesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:TrademarkAndTradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_cxdo_TrademarkAndTradeNamesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:TrademarkAndTradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_DevelopedTechnologiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:DevelopedTechnologiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_cxdo_DevelopedTechnologiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:DevelopedTechnologiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_us-gaap_CustomerRelationshipsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_us-gaap_CustomerRelationshipsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_us-gaap_LeaseholdImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_us-gaap_LeaseholdImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_us-gaap_VehiclesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_us-gaap_VehiclesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_cxdo_InternalUseComputerSoftwareMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:InternalUseComputerSoftwareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_InternalUseComputerSoftwareMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:InternalUseComputerSoftwareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_cxdo_ComputerSoftwareIntangibleAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:ComputerSoftwareIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_ComputerSoftwareIntangibleAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:ComputerSoftwareIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_us-gaap_OfficeEquipmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_us-gaap_OfficeEquipmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_PriorMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:PriorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_TwoThousendTwentyFourMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyFourMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_TwoThousendTwentyFiveMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyFiveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_TwoThousendTwentyOneMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_TwoThousendTwentyTwoMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_TwoThousendTwentyThreeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyThreeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyThreeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cxdo:UnitedStateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyThreeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_PriorMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cxdo:UnitedStateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:PriorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyFourMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cxdo:UnitedStateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyFourMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyFiveMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cxdo:UnitedStateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyFiveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyOneMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cxdo:UnitedStateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyTwoMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cxdo:UnitedStateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyTwoMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancingReceivablesPeriodPastDueAxis">us-gaap:FinancingReceivablesEqualToGreaterThan90DaysPastDueMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancingReceivablesPeriodPastDueAxis">us-gaap:FinancingReceivablesEqualToGreaterThan90DaysPastDueMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_us-gaap_FinancingReceivables60To89DaysPastDueMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancingReceivablesPeriodPastDueAxis">us-gaap:FinancingReceivables60To89DaysPastDueMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_us-gaap_FinancingReceivables60To89DaysPastDueMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancingReceivablesPeriodPastDueAxis">us-gaap:FinancingReceivables60To89DaysPastDueMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_AllowanceForCreditLossesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditLossStatusAxis">cxdo:AllowanceForCreditLossesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_AllowanceForCreditLossesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditLossStatusAxis">cxdo:AllowanceForCreditLossesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_cxdo_AllowanceForCreditLossesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditLossStatusAxis">cxdo:AllowanceForCreditLossesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_StockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:StockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_StockOptionMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:StockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_SoftwareSolutionsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_DesktopDevicesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsegmentsAxis">cxdo:DesktopDevicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsegmentsAxis">cxdo:TelecommunicationsServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_ContractAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:ContractAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_ContractLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:ContractLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-12-31_cxdo_ContractLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:ContractLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-12-31_cxdo_ContractAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:ContractAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:ReportableSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:ReportableSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_OtherCountriesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:OtherCountriesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_TrademarkTradeNamesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:TrademarkTradeNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_DevelopedTechnologiesMember_cxdo_TopMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:DevelopedTechnologiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:TopMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_DevelopedTechnologiesMember_cxdo_BottomMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:DevelopedTechnologiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:BottomMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_CustomerRelationshipMember_cxdo_TopMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:CustomerRelationshipMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:TopMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_CustomerRelationshipMember_cxdo_BottomMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:CustomerRelationshipMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:BottomMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_VehiclesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_LeaseholdImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_FurnitureAndFixturesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_InternalUseComputerSoftwareMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:InternalUseComputerSoftwareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_cxdo_ComputerSoftwareIntangibleAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:ComputerSoftwareIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_OfficeEquipmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_us-gaap_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_us-gaap_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31_us-gaap_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2025-01-01to2025-03-31_us-gaap_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_us-gaap_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_us-gaap_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31_us-gaap_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-03-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-03-31_us-gaap_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-03-31_us-gaap_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-03-31_us-gaap_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31_us-gaap_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="AsOf2023-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2023-12-31_us-gaap_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2023-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2023-12-31_us-gaap_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2023-12-31_us-gaap_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="From2024-01-01to2024-03-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="AsOf2024-12-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-03-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="AsOf2025-04-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001075736</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2025-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="USD"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:unit id="Shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="USDPShares"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit><xbrli:unit id="Pure"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit></ix:resources></ix:header></div><table style="font-size:1px;width:100%"><tbody><tr><td style="BORDER-BOTTOM: 5px solid;"/></tr><tr><td style="BORDER-BOTTOM: 2px solid;"/></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>UNITED STATES</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>SECURITIES AND EXCHANGE COMMISSION</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>WASHINGTON, D.C. 20549</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><span style="font-size:18pt">FORM <ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:DocumentType" id="ixv-15588">10-Q</ix:nonNumeric></span></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px">(Mark One)</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:4%;vertical-align:top;"><ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:DocumentQuarterlyReport" format="ixt-sec:boolballotbox" id="ixv-15589">&#9746;</ix:nonNumeric></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">For the quarterly period ended <strong><span style="text-decoration:underline"><ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:DocumentPeriodEndDate" format="ixt:datemonthdayyearen" id="ixv-15590">March 31, 2025</ix:nonNumeric></span></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;">OR</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:DocumentTransitionReport" format="ixt-sec:boolballotbox" id="ixv-15591">&#9744;</ix:nonNumeric></p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">TRANSITION REPORT PURSUANT TO SECTION 13 or 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934.</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">For the transition period from ________ to ________.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">Commission file number <strong><span style="text-decoration:underline"><ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityFileNumber" id="ixv-15592">001-32277</ix:nonNumeric></span></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><img src="cxdo_10qimg69.jpg" alt="cxdo_10qimg69.jpg"/></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:60%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><span style="font-size:18pt"><ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityRegistrantName" id="ixv-15593">Crexendo, Inc.</ix:nonNumeric></span></strong></p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><em>(Exact name of registrant as specified in its charter)</em></p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160; _______________________________</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><table style="border-spacing:0;font-size:10pt;text-align:justify;margin-left:auto;margin-right:auto;width:85%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;width:45%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen" id="ixv-15594">Nevada</ix:nonNumeric></strong></p></td><td style="width:10%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: #000000 1px solid;width:45%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityTaxIdentificationNumber" id="ixv-15595">87-0591719</ix:nonNumeric></strong></p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><em>(State or other jurisdiction of</em></p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><em>(I.R.S. Employer </em></p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><em>incorporation or organization)</em></p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;<em>Identification No.)</em></p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityAddressAddressLine1" id="ixv-15596">1225 West Washington Street</ix:nonNumeric>, <ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityAddressAddressLine2" id="ixv-15597">Suite 213</ix:nonNumeric>, <ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityAddressCityOrTown" id="ixv-15598">Tempe</ix:nonNumeric>, <ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityAddressStateOrProvince" id="ixv-15599">AZ</ix:nonNumeric></strong></p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityAddressPostalZipCode" id="ixv-15600">85288</ix:nonNumeric></strong></p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><em>(Address of Principal Executive Offices)</em></p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><em>(Zip Code)</em></p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><span style="text-decoration:underline">(<ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:CityAreaCode" id="ixv-15601">602</ix:nonNumeric>) <ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:LocalPhoneNumber" id="ixv-15602">714-8500</ix:nonNumeric></span></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><em>&#160;(Registrant&#8217;s telephone number, including area code)</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><em>&#160;(Former name, former address and former fiscal year, if changed since last report)</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Indicate by check mark whether the registrant (1) 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) has been subject to such filing requirements for the past 90 days. <ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityCurrentReportingStatus" id="ixv-15603">Yes</ix:nonNumeric>&#160;&#9746;&#160;&#160;No&#160;&#9744;&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">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&#160;405 of Regulation&#160;S-T (&#167;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit and post such files). <ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityInteractiveDataCurrent" id="ixv-15604">Yes</ix:nonNumeric>&#160;&#9746;&#160;&#160;No&#160;&#9744;</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer&#8221;, &#8220;smaller reporting company&#8221; and &#8220;emerging growth company&#8221; in Rule 12b-2 of the Exchange Act. (check one).</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font-size:10pt;text-align:justify;margin-left:auto;margin-right:auto;width:85%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:25%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">Large accelerated filer</p></td><td style="width:8%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">&#9744;</p></td><td style="width:34%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">&#160;</p></td><td style="width:25%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">Accelerated filer</p></td><td style="width:8%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">&#9744;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;"><ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen" id="ixv-15605">Non-accelerated filer</ix:nonNumeric></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">&#9744;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">(Do not check if a smaller reporting company)</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">Smaller reporting company</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;"><ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntitySmallBusiness" format="ixt-sec:boolballotbox" id="ixv-15606">&#9746;</ix:nonNumeric></p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">&#160;</p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">&#160;</p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">Emerging growth company</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;"><ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityEmergingGrowthCompany" format="ixt-sec:boolballotbox" id="ixv-15607">&#9744;</ix:nonNumeric></p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; TEXT-INDENT: 0.5in; text-align:left;">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. &#9744;</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; TEXT-INDENT: 0.5in; text-align:left;">Indicate by check mark whether the registrant is a shell company (as defined in Rule&#160;12b-2 of the Exchange Act). Yes&#160;<ix:nonNumeric contextRef="From2025-01-01to2025-03-31" name="dei:EntityShellCompany" format="ixt-sec:boolballotbox" id="ixv-15608">&#9744;</ix:nonNumeric>&#160;&#160;No&#160;&#9746;.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; TEXT-INDENT: 0.5in; text-align:left;">The number of shares outstanding of the registrant&#8217;s common stock as of April 30, 2025 was <ix:nonFraction contextRef="AsOf2025-04-30" name="dei:EntityCommonStockSharesOutstanding" format="ixt:numdotdecimal" decimals="INF" unitRef="Shares" id="ixv-15609">29,030,543</ix:nonFraction>.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="font-size:1px;width:100%"><tbody><tr><td style="BORDER-BOTTOM: 2px solid;"/></tr><tr><td style="BORDER-BOTTOM: 5px solid;"/></tr></tbody></table><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="TEXT-INDENT: 0px;"/></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td>&#160;</td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><span class="atag" style="display: inline" id="TOC">INDEX</span></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td colspan="3"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><a href="#p1">PART I &#8211; FINANCIAL INFORMATION</a></strong></p></td><td/><td/></tr><tr style="height:15px"><td style="width:7%;"/><td/><td style="width:1%;"/><td style="width:9%;"/><td style="width:1%;"/></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#i1">Item 1.</a></p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#i1">Condensed Consolidated Financial Statements.</a></p></td><td/><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">3</p></td><td/></tr><tr style="height:15px;background-color:#ffffff"><td/><td/><td/><td/><td/></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#i2">Item 2. </a></p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#i2">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</a></p></td><td/><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">29</p></td><td/></tr><tr style="height:15px;background-color:#ffffff"><td/><td/><td/><td/><td/></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#i3">Item 3. </a></p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#i3">Quantitative and Qualitative Disclosures about Market Risk</a></p></td><td/><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">41</p></td><td/></tr><tr style="height:15px;background-color:#ffffff"><td/><td/><td/><td/><td/></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#i4">Item 4. </a></p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#i4">Controls and Procedures</a></p></td><td/><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">41</p></td><td/></tr><tr style="height:15px;background-color:#ffffff"><td/><td/><td/><td/><td/></tr><tr style="height:15px;background-color:#ffffff"><td colspan="3" style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><a href="#p2">PART II - OTHER INFORMATION</a></strong></p></td><td/><td/></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#p2i1">Item 1. </a></p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#p2i1">Legal Proceedings</a></p></td><td/><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">42</p></td><td/></tr><tr style="height:15px;background-color:#ffffff"><td/><td/><td/><td/><td/></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#p2i1a">Item 1A. </a></p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#p2i1a">Risk Factors</a></p></td><td/><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">42</p></td><td/></tr><tr style="height:15px;background-color:#ffffff"><td/><td/><td/><td/><td/></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#p2i2">Item 2. </a></p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#p2i2">Unregistered Sales of Equity Securities and Use of Proceeds</a></p></td><td/><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">42</p></td><td/></tr><tr style="height:15px;background-color:#ffffff"><td/><td/><td/><td/><td/></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#i6">Item 6. </a></p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><a href="#i6">Exhibits</a></p></td><td/><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:right;">43</p></td><td/></tr><tr style="height:15px;background-color:#ffffff"><td/><td/><td/><td/><td/></tr><tr style="height:15px;background-color:#cceeff"><td colspan="2" style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><a href="#sig">Signatures</a></p></td><td/><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;">44</p></td><td/></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">2</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><span class="atag" style="display: inline" id="p1">PART I - FINANCIAL INFORMATION</span></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong><span class="atag" style="display: inline" id="i1">Item 1. Condensed Consolidated Financial Statements.</span></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Crexendo, Inc.&#160;AND SUBSIDIARIES</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Condensed Consolidated Balance Sheets</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">(Unaudited, in thousands, except par value and share data)</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Assets</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Current assets:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Cash and cash equivalents</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2055" contextRef="AsOf2025-03-31" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">21,207</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2056" contextRef="AsOf2024-12-31" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">18,193</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Trade receivables, net of allowance of $<ix:nonFraction id="fid_506" contextRef="AsOf2025-03-31" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">165</ix:nonFraction> and $<ix:nonFraction id="fid_505" contextRef="AsOf2024-12-31" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">146</ix:nonFraction>, respectively</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2057" contextRef="AsOf2025-03-31" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,060</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2058" contextRef="AsOf2024-12-31" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,352</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Inventories</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2059" contextRef="AsOf2025-03-31" name="us-gaap:InventoryNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">576</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2060" contextRef="AsOf2024-12-31" name="us-gaap:InventoryNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">393</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Equipment financing receivables, net of allowance of $<ix:nonFraction id="fid_508" contextRef="AsOf2025-03-31" name="cxdo:AllowanceForEquipmentFinancingReceivable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">31</ix:nonFraction> and $<ix:nonFraction id="fid_507" contextRef="AsOf2024-12-31" name="cxdo:AllowanceForEquipmentFinancingReceivable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">69</ix:nonFraction>, respectively</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2061" contextRef="AsOf2025-03-31" name="cxdo:EquipmentFinancingReceivables" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,138</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2062" contextRef="AsOf2024-12-31" name="cxdo:EquipmentFinancingReceivables" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,049</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Contract costs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2063" contextRef="AsOf2025-03-31" name="us-gaap:CapitalizedContractCostNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,108</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2064" contextRef="AsOf2024-12-31" name="us-gaap:CapitalizedContractCostNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,931</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Prepaid expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2065" contextRef="AsOf2025-03-31" name="us-gaap:PrepaidExpenseCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">993</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2066" contextRef="AsOf2024-12-31" name="us-gaap:PrepaidExpenseCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">876</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Income tax receivable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2067" contextRef="AsOf2025-03-31" name="us-gaap:IncomeTaxReceivable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">42</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2068" contextRef="AsOf2024-12-31" name="us-gaap:IncomeTaxReceivable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">75</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Other current assets</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2069" contextRef="AsOf2025-03-31" name="us-gaap:OtherAssetsCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">25</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2070" contextRef="AsOf2024-12-31" name="us-gaap:OtherAssetsCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:16pt">Total current assets</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2071" contextRef="AsOf2025-03-31" name="us-gaap:AssetsCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">30,149</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2072" contextRef="AsOf2024-12-31" name="us-gaap:AssetsCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">26,882</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Contract assets, net of allowance of $<ix:nonFraction id="fid_510" contextRef="AsOf2025-03-31" name="cxdo:AllowanceForContractAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">122</ix:nonFraction> and $<ix:nonFraction id="fid_509" contextRef="AsOf2024-12-31" name="cxdo:AllowanceForContractAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">127</ix:nonFraction>, respectively</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2073" contextRef="AsOf2025-03-31" name="us-gaap:ContractWithCustomerAssetNetNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">419</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2074" contextRef="AsOf2024-12-31" name="us-gaap:ContractWithCustomerAssetNetNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">406</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Long-term equipment financing receivables, net of allowance of $<ix:nonFraction id="fid_512" contextRef="AsOf2025-03-31" name="cxdo:AllowanceForLongTermEquipmentFinancingReceivable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">69</ix:nonFraction> and $<ix:nonFraction id="fid_511" contextRef="AsOf2024-12-31" name="cxdo:AllowanceForLongTermEquipmentFinancingReceivable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">157</ix:nonFraction>, respectively</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2075" contextRef="AsOf2025-03-31" name="cxdo:LongTermEquipmentFinancingReceivables" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,549</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2076" contextRef="AsOf2024-12-31" name="cxdo:LongTermEquipmentFinancingReceivables" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,397</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Property and equipment, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2077" contextRef="AsOf2025-03-31" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">329</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2078" contextRef="AsOf2024-12-31" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">394</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Operating lease right-of-use assets</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2079" contextRef="AsOf2025-03-31" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,334</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2080" contextRef="AsOf2024-12-31" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,491</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Intangible assets, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2081" contextRef="AsOf2025-03-31" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">19,822</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2082" contextRef="AsOf2024-12-31" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">20,528</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Goodwill</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2083" contextRef="AsOf2025-03-31" name="us-gaap:Goodwill" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,454</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2084" contextRef="AsOf2024-12-31" name="us-gaap:Goodwill" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,454</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Contract costs, net of current portion</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2085" contextRef="AsOf2025-03-31" name="us-gaap:CapitalizedContractCostNetNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,894</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2086" contextRef="AsOf2024-12-31" name="us-gaap:CapitalizedContractCostNetNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,879</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other long-term assets</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2087" contextRef="AsOf2025-03-31" name="us-gaap:OtherAssetsNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">499</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2088" contextRef="AsOf2024-12-31" name="us-gaap:OtherAssetsNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">507</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:16pt">Total Assets</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2089" contextRef="AsOf2025-03-31" name="us-gaap:Assets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">67,449</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2090" contextRef="AsOf2024-12-31" name="us-gaap:Assets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">64,938</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Liabilities and Stockholders' Equity</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Current liabilities:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Accounts payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2093" contextRef="AsOf2025-03-31" name="us-gaap:AccountsPayableCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">861</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2094" contextRef="AsOf2024-12-31" name="us-gaap:AccountsPayableCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,003</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Accrued expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2095" contextRef="AsOf2025-03-31" name="us-gaap:AccruedLiabilitiesCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,439</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2096" contextRef="AsOf2024-12-31" name="us-gaap:AccruedLiabilitiesCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,992</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Finance leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2097" contextRef="AsOf2025-03-31" name="us-gaap:FinanceLeaseLiabilityCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2098" contextRef="AsOf2024-12-31" name="us-gaap:FinanceLeaseLiabilityCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">21</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2099" contextRef="AsOf2025-03-31" name="us-gaap:NotesPayableCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">475</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2100" contextRef="AsOf2024-12-31" name="us-gaap:NotesPayableCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">478</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Operating lease liabilities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2101" contextRef="AsOf2025-03-31" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">467</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2102" contextRef="AsOf2024-12-31" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">481</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Income tax payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2103" contextRef="AsOf2025-03-31" name="us-gaap:TaxesPayableCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">40</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2104" contextRef="AsOf2024-12-31" name="us-gaap:TaxesPayableCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">40</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Contract liabilities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2105" contextRef="AsOf2025-03-31" name="us-gaap:ContractWithCustomerLiabilityCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,833</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2106" contextRef="AsOf2024-12-31" name="us-gaap:ContractWithCustomerLiabilityCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,079</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:16pt">Total current liabilities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2107" contextRef="AsOf2025-03-31" name="us-gaap:LiabilitiesCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">11,117</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2108" contextRef="AsOf2024-12-31" name="us-gaap:LiabilitiesCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">12,094</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Contract liabilities, net of current portion</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2109" contextRef="AsOf2025-03-31" name="us-gaap:ContractWithCustomerLiabilityNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">205</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2110" contextRef="AsOf2024-12-31" name="us-gaap:ContractWithCustomerLiabilityNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">293</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Finance leases, net of current portion</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2111" contextRef="AsOf2025-03-31" name="us-gaap:FinanceLeaseLiabilityNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2112" contextRef="AsOf2024-12-31" name="us-gaap:FinanceLeaseLiabilityNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Notes payable, net of current portion</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2113" contextRef="AsOf2025-03-31" name="us-gaap:LongTermNotesPayable" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2114" contextRef="AsOf2024-12-31" name="us-gaap:LongTermNotesPayable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">114</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Operating lease liabilities, net of current portion</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2115" contextRef="AsOf2025-03-31" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">903</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2116" contextRef="AsOf2024-12-31" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,022</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:16pt">Total liabilities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2117" contextRef="AsOf2025-03-31" name="us-gaap:Liabilities" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">12,227</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2118" contextRef="AsOf2024-12-31" name="us-gaap:Liabilities" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13,525</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Stockholders' equity:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Preferred stock, par value $<ix:nonFraction id="fid_513" contextRef="AsOf2025-03-31" name="us-gaap:PreferredStockParOrStatedValuePerShare" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.001</ix:nonFraction> per share - authorized <ix:nonFraction id="fid_515" contextRef="AsOf2025-03-31" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">5,000,000</ix:nonFraction> shares; none issued</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2120" contextRef="AsOf2025-03-31" name="us-gaap:PreferredStockValue" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2121" contextRef="AsOf2024-12-31" name="us-gaap:PreferredStockValue" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; TEXT-INDENT: 8pt; text-align:justify;">Common stock, par value $<ix:nonFraction id="fid_519" contextRef="AsOf2025-03-31" name="us-gaap:CommonStockParOrStatedValuePerShare" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.001</ix:nonFraction> per share - authorized <ix:nonFraction id="fid_521" contextRef="AsOf2025-03-31" name="us-gaap:CommonStockSharesAuthorized" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">50,000,000</ix:nonFraction> shares, <ix:nonFraction id="fid_524" contextRef="AsOf2025-03-31" name="us-gaap:CommonStockSharesIssued" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">28,990,386</ix:nonFraction> shares issued and outstanding as of</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; TEXT-INDENT: 8pt; text-align:justify;">March 31, 2025 and <ix:nonFraction id="fid_523" contextRef="AsOf2024-12-31" name="us-gaap:CommonStockSharesIssued" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">27,621,557</ix:nonFraction> shares issued and outstanding as of December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2122" contextRef="AsOf2025-03-31" name="us-gaap:CommonStockValue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">29</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2123" contextRef="AsOf2024-12-31" name="us-gaap:CommonStockValue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">28</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Additional paid-in capital</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2124" contextRef="AsOf2025-03-31" name="us-gaap:AdditionalPaidInCapital" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">140,639</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2125" contextRef="AsOf2024-12-31" name="us-gaap:AdditionalPaidInCapital" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">138,015</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Accumulated deficit</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2126" contextRef="AsOf2025-03-31" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">85,619</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2127" contextRef="AsOf2024-12-31" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">86,790</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Accumulated other comprehensive income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2128" contextRef="AsOf2025-03-31" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">173</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2129" contextRef="AsOf2024-12-31" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">160</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:16pt">Total stockholders' equity</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2130" contextRef="AsOf2025-03-31" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">55,222</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2131" contextRef="AsOf2024-12-31" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">51,413</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:16pt">Total Liabilities and Stockholders' Equity</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2132" contextRef="AsOf2025-03-31" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">67,449</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2133" contextRef="AsOf2024-12-31" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">64,938</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><em>The accompanying notes are an integral part of the condensed consolidated financial statements. </em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">3</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>CREXENDO, INC. AND SUBSIDIARIES</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Condensed Consolidated Statements of Operations</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">(Unaudited, in thousands, except per share and share data)</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Service revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2134" contextRef="From2025-01-01to2025-03-31" name="cxdo:ServiceRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">8,182</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2135" contextRef="From2024-01-01to2024-03-31" name="cxdo:ServiceRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">7,845</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software solutions revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2136" contextRef="From2025-01-01to2025-03-31" name="cxdo:SoftwareSolutionsRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,868</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2137" contextRef="From2024-01-01to2024-03-31" name="cxdo:SoftwareSolutionsRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,146</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Product revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2138" contextRef="From2025-01-01to2025-03-31" name="cxdo:ProductRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,007</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2139" contextRef="From2024-01-01to2024-03-31" name="cxdo:ProductRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,295</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Total revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2140" contextRef="From2025-01-01to2025-03-31" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">16,057</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2141" contextRef="From2024-01-01to2024-03-31" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">14,286</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Operating expenses:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Cost of service revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2143" contextRef="From2025-01-01to2025-03-31" name="cxdo:CostOfServiceRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,487</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2144" contextRef="From2024-01-01to2024-03-31" name="cxdo:CostOfServiceRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,109</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Cost of software solutions revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2145" contextRef="From2025-01-01to2025-03-31" name="cxdo:CostOfSoftwareSolutionsRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,490</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2146" contextRef="From2024-01-01to2024-03-31" name="cxdo:CostOfSoftwareSolutionsRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,392</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Cost of product revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2147" contextRef="From2025-01-01to2025-03-31" name="cxdo:CostOfProductRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">599</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2148" contextRef="From2024-01-01to2024-03-31" name="cxdo:CostOfProductRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">730</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Selling and marketing</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2149" contextRef="From2025-01-01to2025-03-31" name="us-gaap:SellingAndMarketingExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,289</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2150" contextRef="From2024-01-01to2024-03-31" name="us-gaap:SellingAndMarketingExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,027</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">General and administrative</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2151" contextRef="From2025-01-01to2025-03-31" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,519</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2152" contextRef="From2024-01-01to2024-03-31" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,296</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Research and development</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2153" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,523</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2154" contextRef="From2024-01-01to2024-03-31" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,249</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:16pt">Total operating expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2155" contextRef="From2025-01-01to2025-03-31" name="us-gaap:OperatingExpenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">14,907</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2156" contextRef="From2024-01-01to2024-03-31" name="us-gaap:OperatingExpenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13,803</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income/(loss) from operations</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2157" contextRef="From2025-01-01to2025-03-31" name="us-gaap:OperatingIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,150</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2158" contextRef="From2024-01-01to2024-03-31" name="us-gaap:OperatingIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">483</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other income/(expense):</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Interest income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2160" contextRef="From2025-01-01to2025-03-31" name="us-gaap:InterestIncomeOther" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">84</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2161" contextRef="From2024-01-01to2024-03-31" name="us-gaap:InterestIncomeOther" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Interest expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2162" contextRef="From2025-01-01to2025-03-31" name="us-gaap:InterestExpenseOther" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2163" contextRef="From2024-01-01to2024-03-31" name="us-gaap:InterestExpenseOther" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Other income/(expense), net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2164" contextRef="From2025-01-01to2025-03-31" name="us-gaap:OtherNonoperatingIncomeExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">10</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2165" contextRef="From2024-01-01to2024-03-31" name="us-gaap:OtherNonoperatingIncomeExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">14</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:16pt">Total other income/(expense), net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2166" contextRef="From2025-01-01to2025-03-31" name="us-gaap:NonoperatingIncomeExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">65</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2167" contextRef="From2024-01-01to2024-03-31" name="us-gaap:NonoperatingIncomeExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">22</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income/(loss) before income tax</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2168" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,215</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2169" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">461</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income tax (provision)/benefit</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2170" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">44</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2171" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">27</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2172" contextRef="From2025-01-01to2025-03-31" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,171</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2173" contextRef="From2024-01-01to2024-03-31" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">434</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Earnings per common share:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Basic</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2175" contextRef="From2025-01-01to2025-03-31" name="us-gaap:EarningsPerShareBasic" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.04</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2176" contextRef="From2024-01-01to2024-03-31" name="us-gaap:EarningsPerShareBasic" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.02</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Diluted</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2177" contextRef="From2025-01-01to2025-03-31" name="us-gaap:EarningsPerShareDiluted" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.04</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2178" contextRef="From2024-01-01to2024-03-31" name="us-gaap:EarningsPerShareDiluted" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.01</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Weighted-average common shares outstanding:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Basic</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2180" contextRef="From2025-01-01to2025-03-31" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">28,024,280</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2181" contextRef="From2024-01-01to2024-03-31" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">26,314,903</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Diluted</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2182" contextRef="From2025-01-01to2025-03-31" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">31,092,775</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2183" contextRef="From2024-01-01to2024-03-31" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">30,142,100</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><em>The accompanying notes are an integral part of the condensed consolidated financial statements. </em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">4</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>CREXENDO, INC. AND SUBSIDIARIES</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Condensed Consolidated Statements of Comprehensive Income/(Loss)</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">(Unaudited, in thousands)</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2184" contextRef="From2025-01-01to2025-03-31" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,171</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2185" contextRef="From2024-01-01to2024-03-31" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">434</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other comprehensive income/(loss), net of tax</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px;text-indent:0px">Foreign currency translation gain/(loss)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2187" contextRef="From2025-01-01to2025-03-31" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2188" contextRef="From2024-01-01to2024-03-31" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Total other comprehensive income/(loss)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2189" contextRef="From2025-01-01to2025-03-31" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2190" contextRef="From2024-01-01to2024-03-31" name="us-gaap:OtherComprehensiveIncomeLossNetOfTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Comprehensive income/(loss)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2191" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,184</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2192" contextRef="From2024-01-01to2024-03-31" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">435</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><em>The accompanying notes are an integral part of the condensed consolidated financial statements.</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">5</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>CREXENDO, INC. AND SUBSIDIARIES</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Condensed Consolidated Statements of Stockholders' Equity</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Three Months Ended March 31, 2025 and 2024</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">(Unaudited, in thousands, except share data)</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Accumulated</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Additional</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><strong>Other</strong></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Common Stock</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Paid-in</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Comprehensive</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Accumulated</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Stockholders'</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Shares</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Capital</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Income</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Deficit</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Equity</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Balance, January 1, 2025</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2259" contextRef="AsOf2024-12-31_us-gaap_CommonStockMember" name="us-gaap:SharesIssued" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">27,621,557</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2260" contextRef="AsOf2024-12-31_us-gaap_CommonStockMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">28</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2261" contextRef="AsOf2024-12-31_us-gaap_AdditionalPaidInCapitalMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">138,015</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2262" contextRef="AsOf2024-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">160</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2263" contextRef="AsOf2024-12-31_us-gaap_RetainedEarningsMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">86,790</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2264" contextRef="AsOf2024-12-31" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">51,413</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Share-based compensation</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2265" contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2266" contextRef="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">726</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2267" contextRef="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2268" contextRef="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2269" contextRef="From2025-01-01to2025-03-31" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">726</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Vesting of restricted stock units</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2270" contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember" name="cxdo:VestingOfRestrictedStockUnitsShares" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">22,977</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2271" contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember" name="cxdo:VestingOfRestrictedStockUnitsAmount" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2272" contextRef="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember" name="cxdo:VestingOfRestrictedStockUnitsAmount" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2273" contextRef="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="cxdo:VestingOfRestrictedStockUnitsAmount" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2274" contextRef="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember" name="cxdo:VestingOfRestrictedStockUnitsAmount" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2275" contextRef="From2025-01-01to2025-03-31" name="cxdo:VestingOfRestrictedStockUnitsAmount" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Foreign currency translation adjustment, net of tax</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2276" contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2277" contextRef="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2278" contextRef="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2279" contextRef="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2280" contextRef="From2025-01-01to2025-03-31" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Issuance of common stock for exercise of stock options</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2281" contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">1,345,852</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2282" contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2283" contextRef="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,978</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2284" contextRef="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2285" contextRef="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2286" contextRef="From2025-01-01to2025-03-31" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,979</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Taxes paid on the net settlement of stock options and RSUs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2287" contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember" name="cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2288" contextRef="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember" name="cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">80</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2289" contextRef="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2290" contextRef="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember" name="cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2291" contextRef="From2025-01-01to2025-03-31" name="cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">80</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2292" contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember" name="us-gaap:NetIncomeLoss" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2293" contextRef="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember" name="us-gaap:NetIncomeLoss" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2294" contextRef="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="us-gaap:NetIncomeLoss" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2295" contextRef="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,171</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2296" contextRef="From2025-01-01to2025-03-31" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,171</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Balance, March 31, 2025</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2297" contextRef="AsOf2025-03-31_us-gaap_CommonStockMember" name="us-gaap:SharesIssued" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">28,990,386</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2298" contextRef="AsOf2025-03-31_us-gaap_CommonStockMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">29</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2299" contextRef="AsOf2025-03-31_us-gaap_AdditionalPaidInCapitalMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">140,639</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2300" contextRef="AsOf2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">173</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2301" contextRef="AsOf2025-03-31_us-gaap_RetainedEarningsMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">85,619</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2302" contextRef="AsOf2025-03-31" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">55,222</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Accumulated</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Additional</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Other</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;"/><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Common Stock</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Paid-in</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Comprehensive</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Accumulated</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Stockholders'</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Shares</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Capital</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Income</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Deficit</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Equity</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Balance, January 1, 2024</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2303" contextRef="AsOf2023-12-31_us-gaap_CommonStockMember" name="us-gaap:SharesIssued" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">26,130,218</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2304" contextRef="AsOf2023-12-31_us-gaap_CommonStockMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">26</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2305" contextRef="AsOf2023-12-31_us-gaap_AdditionalPaidInCapitalMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">132,888</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2306" contextRef="AsOf2023-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">166</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2307" contextRef="AsOf2023-12-31_us-gaap_RetainedEarningsMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">88,467</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2308" contextRef="AsOf2023-12-31" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">44,613</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Share-based compensation</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2309" contextRef="From2024-01-01to2024-03-31_us-gaap_CommonStockMember" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2310" contextRef="From2024-01-01to2024-03-31_us-gaap_AdditionalPaidInCapitalMember" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">728</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2311" contextRef="From2024-01-01to2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2312" contextRef="From2024-01-01to2024-03-31_us-gaap_RetainedEarningsMember" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2313" contextRef="From2024-01-01to2024-03-31" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">728</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Foreign currency translation adjustment, net of tax</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2314" contextRef="From2024-01-01to2024-03-31_us-gaap_CommonStockMember" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2315" contextRef="From2024-01-01to2024-03-31_us-gaap_AdditionalPaidInCapitalMember" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2316" contextRef="From2024-01-01to2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2317" contextRef="From2024-01-01to2024-03-31_us-gaap_RetainedEarningsMember" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2318" contextRef="From2024-01-01to2024-03-31" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Issuance of common stock for exercise of stock options</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2319" contextRef="From2024-01-01to2024-03-31_us-gaap_CommonStockMember" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">497,804</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2320" contextRef="From2024-01-01to2024-03-31_us-gaap_CommonStockMember" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2321" contextRef="From2024-01-01to2024-03-31_us-gaap_AdditionalPaidInCapitalMember" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,048</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2322" contextRef="From2024-01-01to2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2323" contextRef="From2024-01-01to2024-03-31_us-gaap_RetainedEarningsMember" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2324" contextRef="From2024-01-01to2024-03-31" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,049</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Taxes paid on the net settlement of stock options and RSUs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2325" contextRef="From2024-01-01to2024-03-31_us-gaap_CommonStockMember" name="cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2326" contextRef="From2024-01-01to2024-03-31_us-gaap_AdditionalPaidInCapitalMember" name="cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">60</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2327" contextRef="From2024-01-01to2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2328" contextRef="From2024-01-01to2024-03-31_us-gaap_RetainedEarningsMember" name="cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2329" contextRef="From2024-01-01to2024-03-31" name="cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">60</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2330" contextRef="From2024-01-01to2024-03-31_us-gaap_CommonStockMember" name="us-gaap:NetIncomeLoss" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2331" contextRef="From2024-01-01to2024-03-31_us-gaap_AdditionalPaidInCapitalMember" name="us-gaap:NetIncomeLoss" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2332" contextRef="From2024-01-01to2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="us-gaap:NetIncomeLoss" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2333" contextRef="From2024-01-01to2024-03-31_us-gaap_RetainedEarningsMember" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">434</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2334" contextRef="From2024-01-01to2024-03-31" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">434</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Balance, March 31, 2024</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2335" contextRef="AsOf2024-03-31_us-gaap_CommonStockMember" name="us-gaap:SharesIssued" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">26,628,022</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2336" contextRef="AsOf2024-03-31_us-gaap_CommonStockMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">27</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2337" contextRef="AsOf2024-03-31_us-gaap_AdditionalPaidInCapitalMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">134,604</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2338" contextRef="AsOf2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">167</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2339" contextRef="AsOf2024-03-31_us-gaap_RetainedEarningsMember" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">88,033</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2340" contextRef="AsOf2024-03-31" name="us-gaap:StockholdersEquity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">46,765</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><em>The accompanying notes are an integral part of the condensed consolidated financial statements. </em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">6</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>CREXENDO, INC. AND SUBSIDIARIES</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Condensed Consolidated Statements of Cash Flows</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">(Unaudited, in thousands) </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">CASH FLOWS FROM OPERATING ACTIVITIES</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2194" contextRef="From2025-01-01to2025-03-31" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,171</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2195" contextRef="From2024-01-01to2024-03-31" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">434</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Adjustments to reconcile net income/(loss) to net cash provided by/(used for) operating activities:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Depreciation and amortization</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2196" contextRef="From2025-01-01to2025-03-31" name="us-gaap:DepreciationAndAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">771</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2197" contextRef="From2024-01-01to2024-03-31" name="us-gaap:DepreciationAndAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">840</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2198" contextRef="From2025-01-01to2025-03-31" name="cxdo:AllowanceForCreditLosses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">112</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2199" contextRef="From2024-01-01to2024-03-31" name="cxdo:AllowanceForCreditLosses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">14</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Share-based compensation</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2200" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ShareBasedCompensation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">726</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2201" contextRef="From2024-01-01to2024-03-31" name="us-gaap:ShareBasedCompensation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">728</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Non-cash operating lease amortization</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2202" contextRef="From2025-01-01to2025-03-31" name="us-gaap:OtherNoncashIncomeExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">24</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2203" contextRef="From2024-01-01to2024-03-31" name="us-gaap:OtherNoncashIncomeExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Changes in assets and liabilities:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Trade receivables</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2205" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">273</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2206" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">749</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Contract assets</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2207" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncreaseDecreaseInContractWithCustomerAsset" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">8</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2208" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncreaseDecreaseInContractWithCustomerAsset" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">25</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Equipment financing receivables</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2209" contextRef="From2025-01-01to2025-03-31" name="cxdo:IncreaseDecreaseInEquipmentFinancingReceivables" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">115</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2210" contextRef="From2024-01-01to2024-03-31" name="cxdo:IncreaseDecreaseInEquipmentFinancingReceivables" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">137</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Inventories</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2211" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">183</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2212" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">1</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Contract costs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2213" contextRef="From2025-01-01to2025-03-31" name="cxdo:IncreaseDecreaseInContractCosts" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">192</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2214" contextRef="From2024-01-01to2024-03-31" name="cxdo:IncreaseDecreaseInContractCosts" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">379</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Prepaid expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2215" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncreaseDecreaseInPrepaidExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">117</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2216" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncreaseDecreaseInPrepaidExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">391</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Income tax receivable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2217" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncreaseDecreaseInIncomeTaxesReceivable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">33</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2218" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncreaseDecreaseInIncomeTaxesReceivable" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Other assets</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2219" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2220" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">14</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Accounts payable and accrued expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2221" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">695</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2222" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">1,099</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Income tax payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2223" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2224" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">27</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Contract liabilities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2225" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">334</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2226" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">508</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:16pt">Net cash provided by/(used for) operating activities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2227" contextRef="From2025-01-01to2025-03-31" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,238</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2228" contextRef="From2024-01-01to2024-03-31" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">166</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">CASH FLOWS FROM INVESTING ACTIVITIES</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Purchase of property and equipment</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2230" contextRef="From2025-01-01to2025-03-31" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2231" contextRef="From2024-01-01to2024-03-31" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:16pt">Net cash provided by/(used for) investing activities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2232" contextRef="From2025-01-01to2025-03-31" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2233" contextRef="From2024-01-01to2024-03-31" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">CASH FLOWS FROM FINANCING ACTIVITIES</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Repayments made on finance leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2235" contextRef="From2025-01-01to2025-03-31" name="us-gaap:FinanceLeasePrincipalPayments" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">19</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2236" contextRef="From2024-01-01to2024-03-31" name="us-gaap:FinanceLeasePrincipalPayments" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">18</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Repayments made on notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2237" contextRef="From2025-01-01to2025-03-31" name="us-gaap:RepaymentsOfNotesPayable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">117</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2238" contextRef="From2024-01-01to2024-03-31" name="us-gaap:RepaymentsOfNotesPayable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">112</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Proceeds from exercise of options</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2239" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ProceedsFromStockOptionsExercised" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,979</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2240" contextRef="From2024-01-01to2024-03-31" name="us-gaap:ProceedsFromStockOptionsExercised" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,049</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Taxes paid on the net settlement of stock options and RSUs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2241" contextRef="From2025-01-01to2025-03-31" name="cxdo:TaxesPaidOnTheNetSettlementOfStockOptionAndRsus" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">80</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2242" contextRef="From2024-01-01to2024-03-31" name="cxdo:TaxesPaidOnTheNetSettlementOfStockOptionAndRsus" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">60</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:16pt">Net cash provided by/(used for) financing activities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2243" contextRef="From2025-01-01to2025-03-31" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,763</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2244" contextRef="From2024-01-01to2024-03-31" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">859</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Effect of exchange rate changes on cash</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2245" contextRef="From2025-01-01to2025-03-31" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2246" contextRef="From2024-01-01to2024-03-31" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">NET INCREASE/(DECREASE) IN CASH AND CASH EQUIVALENTS</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2247" contextRef="From2025-01-01to2025-03-31" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,014</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2248" contextRef="From2024-01-01to2024-03-31" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">694</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">CASH AND CASH EQUIVALENTS AT THE BEGINNING OF THE YEAR</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2249" contextRef="AsOf2024-12-31" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">18,193</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2250" contextRef="AsOf2023-12-31" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">10,347</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">CASH AND CASH EQUIVALENTS AT THE END OF THE YEAR</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2251" contextRef="AsOf2025-03-31" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">21,207</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2252" contextRef="AsOf2024-03-31" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">11,041</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Supplemental disclosure of cash flow information:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cash used during the year for:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Income taxes, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2255" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncomeTaxesPaidNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">10</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2256" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncomeTaxesPaidNet" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Interest expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2257" contextRef="From2025-01-01to2025-03-31" name="us-gaap:InterestPaidNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">8</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2258" contextRef="From2024-01-01to2024-03-31" name="us-gaap:InterestPaidNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><em>The accompanying notes are an integral part of the condensed consolidated financial statements. </em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">7</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>CREXENDO, INC. AND SUBSIDIARIES </strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Notes to Condensed Consolidated Financial Statements</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>(unaudited, in thousands, except per share and share data) </strong></p><ix:nonNumeric id="fid_757" contextRef="From2025-01-01to2025-03-31" name="us-gaap:SignificantAccountingPoliciesTextBlock" escape="true" continuedAt="cont_eb9f35"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>1. Significant Accounting Policies</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_779" contextRef="From2025-01-01to2025-03-31" name="cxdo:DescriptionOfBusinessPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Description of Business &#8211;</strong>Crexendo, Inc. is incorporated in the state of Nevada. As used hereafter in the notes to condensed consolidated financial statements, we refer to Crexendo, Inc. and its wholly owned subsidiaries, as &#8220;we,&#8221; &#8220;us,&#8221; or &#8220;our Company.&#8221; Crexendo, Inc. is an award-winning software technology company that is a premier provider of cloud communication platform software and unified communications as a service (UCaaS) offerings, including voice, video, contact center, and managed IT services tailored to businesses of all sizes. Our cloud communications software solutions currently support over six million end users globally, through an extensive network of over 235 cloud communication platform software subscribers and our direct retail offering. The Company has two operating segments, which consist of Cloud Telecommunications and Software Solutions.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_780" contextRef="From2025-01-01to2025-03-31" name="us-gaap:BasisOfAccountingPolicyPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Basis of Presentation</strong><strong>&#8211;</strong>The condensed consolidated financial statements include the accounts and operations of Crexendo, Inc. and its wholly owned subsidiaries, which include Allegiant Networks, LLC, Crexendo Business Solutions, Inc., NetSapiens, LLC, Crexendo Business Solutions of Virginia, Inc., NSHC, Inc., NetSapiens Canada, Inc., NetSapiens International Limited and Crexendo International, Inc. All intercompany account balances and transactions have been eliminated in consolidation. The accompanying unaudited interim condensed consolidated financial statements have been prepared in accordance with U.S. generally accepted accounting principles (&#8220;US GAAP&#8221;), consistent in all material respects with those applied in our financial statements included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2024. Because these financial statements address interim periods, they do not include all of the information and footnotes required by U.S. generally accepted accounting principles for complete financial statements. Such interim financial information is unaudited but reflects all adjustments that in the opinion of management are necessary for the fair presentation of the interim periods presented. The results of operations presented in this Quarterly Report on Form 10-Q are not necessarily indicative of the results that may be expected for the year ending December 31, 2025 or for any future periods. This Quarterly Report on Form 10-Q should be read in conjunction with the Company&#8217;s audited financial statements and footnotes included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2024.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_781" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Foreign Currency Translation<em>-</em></strong>The functional currency of our international subsidiaries is the local currency. We translate assets and liabilities of foreign subsidiaries, whose functional currency is their local currency, at exchange rates in effect at the balance sheet date. We translate revenue and expenses at the monthly average exchange rates. We include accumulated net translation adjustments in stockholders&#8217; equity as a component of accumulated other comprehensive income (loss).</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Due to changes in exchange rates between reporting periods and changes in certain account balances, the foreign currency translation adjustment will change from period to period. During the three months ended March 31, 2025 and 2024, we recorded foreign currency translation gains/(losses) of $<ix:nonFraction id="fid_1621" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13</ix:nonFraction>, and $<ix:nonFraction id="fid_1620" contextRef="From2024-01-01to2024-03-31" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1</ix:nonFraction>, respectively, in our statements of comprehensive income (loss).</p></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_782" contextRef="From2025-01-01to2025-03-31" name="us-gaap:CashAndCashEquivalentsPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Cash and Cash Equivalents</strong><strong>&#8211;</strong>We consider all highly liquid, short-term investments with maturities of three months or less at the time of purchase to be cash equivalents. As of March 31, 2025 and December 31, 2024, we had cash and cash equivalents in financial institutions in excess of federally insured limits in the amount of $<ix:nonFraction id="fid_1622" contextRef="AsOf2025-03-31" name="us-gaap:CashEquivalentsAtCarryingValue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">20,451</ix:nonFraction> and $<ix:nonFraction id="fid_1623" contextRef="AsOf2024-12-31" name="us-gaap:CashEquivalentsAtCarryingValue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">17,501</ix:nonFraction> respectively.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_783" contextRef="From2025-01-01to2025-03-31" name="us-gaap:TradeAndOtherAccountsReceivablePolicy" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Trade Receivables and Allowance for Credit Losses</strong><strong>&#8211;</strong>Trade receivables from our cloud telecommunications services and software solutions segments are recorded at invoiced amounts. Trade receivables are generally due within 30 days after the invoice date. We provide an allowance for credit losses based on historical loss experience, the age of the receivables, specific troubled accounts and other currently available information.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The allowance for credit losses is determined based on an assessment of historical collection experience using the aging schedule method as well as consideration of current and future economic conditions. Trade receivables are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our trade receivable credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_784" contextRef="From2025-01-01to2025-03-31" name="cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock" escape="true" continuedAt="cont_e59f6d"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Equipment Financing Receivables and Allowance for Credit Losses</strong><strong>&#8211;</strong>Equipment financing receivables are comprised of sales-type leases. Sales-type leases are from financing options provided to clients for cloud telecommunications equipment (IP or cloud telephone desktop devices) and are generally due in installments over periods ranging from three to five years.</p></ix:nonNumeric></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">8</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_eb9f35" continuedAt="cont_90cc83"><ix:continuation id="cont_e59f6d"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We provide an allowance for credit losses based on historical loss experience, adverse situations that may affect a client's ability to pay, current economic conditions and outlook based on reasonable and supportable forecasts. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary. Equipment financing receivables are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our equipment financing receivable credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients.</p></ix:continuation><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_785" contextRef="From2025-01-01to2025-03-31" name="cxdo:ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Contract Assets and Allowance for Credit Losses</strong><strong>&#8211;</strong>Contract assets primarily relate to the Company&#8217;s rights to consideration for work completed but not billed as of the reporting date. The Company recognizes a contract asset when the Company transfers products or services to a customer and the right to consideration is conditional on something other than the passage of time. The contract assets are transferred to receivables when the rights become unconditional.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The allowance for credit losses is determined based on an assessment of historical collection experience using the loss-rate method as well as consideration of current and future economic conditions and changes in our loss-rate trends. We utilize a five-year lookback period to establish our estimate of expected credit losses, as our contractual terms range from three to five years. Contract assets are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our contract assets credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_786" contextRef="From2025-01-01to2025-03-31" name="cxdo:ContractCostsPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Contract Costs</strong><strong>&#8211;</strong>Contract costs primarily relate to incremental commission costs paid to sales representatives and sales leadership as a result of obtaining software solutions and telecommunication service contracts which are recoverable. The Company capitalized contract costs in the amount of $<ix:nonFraction id="fid_1624" contextRef="AsOf2025-03-31" name="cxdo:CapitalizedContractCost" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,002</ix:nonFraction> and $<ix:nonFraction id="fid_1625" contextRef="AsOf2024-12-31" name="cxdo:CapitalizedContractCost" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,810</ix:nonFraction> at March 31, 2025 and December 31, 2024, respectively. Capitalized commission costs are amortized based on the transfer of goods or services to which the assets relate, which typically range from thirty-six to sixty months, and are included in selling and marketing expenses. During the three months ended March 31, 2025 and 2024, the Company amortized $<ix:nonFraction id="fid_1630" contextRef="From2025-01-01to2025-03-31" name="us-gaap:OtherSellingAndMarketingExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">822</ix:nonFraction> and $<ix:nonFraction id="fid_1629" contextRef="From2024-01-01to2024-03-31" name="us-gaap:OtherSellingAndMarketingExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">500</ix:nonFraction>, respectively, and there was no impairment loss in relation to the costs capitalized.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_787" contextRef="From2025-01-01to2025-03-31" name="us-gaap:InventoryPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Inventory</strong><strong>&#8211;</strong>Finished goods telecommunications equipment inventory is stated at the lower of cost or net realizable value (first-in, first-out method). In accordance with applicable accounting guidance, we regularly evaluate whether inventory is stated at the lower of cost or net realizable value. If net realizable value is less than cost, the write-down is recognized as a loss in earnings in the period in which the excess occurs.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_788" contextRef="From2025-01-01to2025-03-31" name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Property and Equipment</strong><strong>&#8211;</strong>Depreciation and amortization expense is computed using the straight-line method in amounts sufficient to allocate the cost of depreciable assets over their estimated useful lives ranging from two to five years. The cost of leasehold improvements is amortized using the straight-line method over the shorter of the estimated useful life of the asset or the term of the related lease. Depreciable lives by asset group are as follows:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_814" contextRef="From2025-01-01to2025-03-31" name="cxdo:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" escape="true"><table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"><tbody><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer and office equipment</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><ix:nonNumeric id="fid_1609" contextRef="From2025-01-01to2025-03-31_us-gaap_OfficeEquipmentMember" name="cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives">2 to 5 years</ix:nonNumeric></p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer software</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><ix:nonNumeric id="fid_1610" contextRef="From2025-01-01to2025-03-31_cxdo_ComputerSoftwareIntangibleAssetsMember" name="cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives">3 years</ix:nonNumeric></p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Internal-use software</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><ix:nonNumeric id="fid_1611" contextRef="From2025-01-01to2025-03-31_cxdo_InternalUseComputerSoftwareMember" name="cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives">3 years</ix:nonNumeric></p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Furniture and fixtures</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><ix:nonNumeric id="fid_1612" contextRef="From2025-01-01to2025-03-31_us-gaap_FurnitureAndFixturesMember" name="cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives">4 years</ix:nonNumeric></p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Leasehold improvements</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><ix:nonNumeric id="fid_1613" contextRef="From2025-01-01to2025-03-31_us-gaap_LeaseholdImprovementsMember" name="cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives">2 to 5 years</ix:nonNumeric></p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Vehicles</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><ix:nonNumeric id="fid_1614" contextRef="From2025-01-01to2025-03-31_us-gaap_VehiclesMember" name="cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives">5 years</ix:nonNumeric></p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Maintenance and repairs are expensed as incurred. The cost and accumulated depreciation of property and equipment sold or otherwise retired are removed from the accounts and any related gain or loss on disposition is reflected in the statement of operations. &#160;</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_790" contextRef="From2025-01-01to2025-03-31" name="us-gaap:BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Asset Acquisitions</strong><strong> </strong><strong>&#8211; </strong>Periodically we acquire customer relationships that we account for as an asset acquisition and record a corresponding intangible asset that is amortized over its estimated useful life. Any excess of the fair value of the purchase price over the fair value of the identifiable assets and liabilities is allocated on a relative fair value basis. No goodwill is recorded in an asset acquisition. If the fair value of the assets acquired exceeds the initial consideration paid as of the date of acquisition but includes a contingent consideration arrangement and ASC 450 and ASC 815 do not apply to contingent consideration, we analogize to the guidance in ASC 323 on recognizing contingent consideration in the acquisition of an equity method investment. The Company recognizes a liability equal to the lesser of, the maximum amount of contingent consideration or the excess of the fair value of the net assets acquired over the initial cost measurement. In accordance with the requirements of ASC 323 for equity method investments, the Company recognizes any excess of the contingent consideration issued or issuable, over the amount that was initially recognized as a liability, as an additional cost of the asset acquisition. If the amount initially recognized as a liability exceeds the contingent consideration issued or issuable, the entity recognizes that amount as a reduction of the cost of the asset acquisition.&#160; </p></ix:nonNumeric></ix:continuation><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">9</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_90cc83" continuedAt="cont_2f50e5"><ix:nonNumeric id="fid_791" contextRef="From2025-01-01to2025-03-31" name="us-gaap:BusinessCombinationsPolicy" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Business Acquisitions - </strong>We account for business combinations using the acquisition method of accounting. The acquisition method of accounting requires that the purchase price, including the fair value of contingent consideration, of the acquisition be allocated to the assets acquired and liabilities assumed using the fair values determined by management as of the acquisition date. Goodwill as of the acquisition date is measured as the excess of consideration transferred over the net of the acquisition date fair values of assets acquired and the liabilities assumed. While the Company uses its best estimates and assumptions as part of the purchase price allocation process to accurately value assets acquired and liabilities assumed at the acquisition date, the Company&#8217;s estimates are inherently uncertain and subject to refinement. As a result, during the measurement period, which may be up to one year from the acquisition date, the Company records adjustments to the assets acquired and liabilities assumed, with the corresponding offset to goodwill to the extent the Company identifies adjustments to the preliminary purchase price allocation. Upon the conclusion of the measurement period or final determination of the values of assets acquired or liabilities assumed, whichever comes first, any subsequent adjustments are recorded to the consolidated statements of operations. We include the results of all acquisitions in our consolidated financial statements from the date of acquisition. Acquisition related transaction costs, such as banking, legal, accounting and other costs incurred in connection with an acquisition, are expensed as incurred in general and administrative expenses.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_792" contextRef="From2025-01-01to2025-03-31" name="us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Goodwill </strong><strong>&#8211;&#160;</strong>We have recorded goodwill related to various business acquisitions. Goodwill is recorded when the purchase price paid for an acquisition exceeds the estimated fair value of the net identified tangible and intangible assets acquired. In each of our acquisitions, the objective of the acquisition was to expand our product offerings and customer base and to achieve synergies related to cross selling opportunities, all of which contributed to the recognition of goodwill.&#160; We test goodwill for impairment on an annual basis or more frequently if events or changes in circumstances indicate that goodwill might be impaired. Items that could reasonably be expected to negatively affect key assumptions used in estimating fair value include but are not limited to: sustained decline in our stock price due to a decline in our financial performance due to the loss of key customers, loss of key personnel, emergence of new technologies or new competitors; and decline in overall market or economic conditions leading to a decline in our stock price.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The process of estimating the fair value of goodwill is subjective and requires the Company to make estimates that may significantly impact the outcome of the analysis. A qualitative assessment considers events and circumstances such as macroeconomic conditions, industry and market conditions, cost factors and overall financial performance, as well as company specifications. If after performing this assessment, the Company concludes it is more likely than not that the fair value of the reporting unit is less than its carrying amount, then the Company must perform the quantitative test. Under the quantitative test, a goodwill impairment is identified by comparing the fair value of the reporting unit to the carrying amount, including goodwill. If the carrying amount of the reporting unit exceeds the fair value of the reporting unit, goodwill is considered impaired and an impairment charge is recognized in an amount equal to the excess, not to exceed the carrying amount of goodwill.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Impairment assessment inherently involves management judgments regarding a number of assumptions. The reporting unit fair value also depends on the future strength of the U.S. economy. New and developing competition as well as technological change could also adversely affect future fair value estimates. Due to the many variables inherent in the estimation of a reporting unit&#8217;s fair value and the relative size of the Company&#8217;s recorded goodwill, differences in assumptions could have a material effect on the estimated fair values. For further information, see Note 8 (Intangible Assets and Goodwill).</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_793" contextRef="From2025-01-01to2025-03-31" name="us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Intangible Assets &#8211; </strong>Our intangible assets consist of customer relationships, developed technologies, trademarks and trade name. The intangible assets are amortized following the patterns in which the economic benefits are consumed or straight-line over the estimated useful life. We periodically review the estimated useful lives of our intangible assets and review these assets for impairment whenever events or changes in circumstances indicate that the carrying value of the assets may not be recoverable. The determination of impairment is based on estimates of future undiscounted cash flows. If an intangible asset is considered to be impaired, the amount of the impairment will be equal to the excess of the carrying value over the fair value of the asset. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Amortizable intangible assets are amortized over the estimated useful lives as follows:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_813" contextRef="From2025-01-01to2025-03-31" name="cxdo:ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock" escape="true"><table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"><tbody><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer relationships</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><ix:nonNumeric id="fid_1615" contextRef="From2025-01-01to2025-03-31_cxdo_CustomerRelationshipMember_cxdo_BottomMember" name="cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife" format="ixt-sec:duryear">6</ix:nonNumeric> to <ix:nonNumeric id="fid_1616" contextRef="From2025-01-01to2025-03-31_cxdo_CustomerRelationshipMember_cxdo_TopMember" name="cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife" format="ixt-sec:duryear">16</ix:nonNumeric> years</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Developed technologies</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><ix:nonNumeric id="fid_1617" contextRef="From2025-01-01to2025-03-31_cxdo_DevelopedTechnologiesMember_cxdo_BottomMember" name="cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife" format="ixt-sec:duryear">2</ix:nonNumeric> to <ix:nonNumeric id="fid_1618" contextRef="From2025-01-01to2025-03-31_cxdo_DevelopedTechnologiesMember_cxdo_TopMember" name="cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife" format="ixt-sec:duryear">6</ix:nonNumeric> years</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Trademark and trade names</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><ix:nonNumeric id="fid_1619" contextRef="From2025-01-01to2025-03-31_cxdo_TrademarkTradeNamesMember" name="cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife" format="ixt-sec:duryear">4</ix:nonNumeric> years</p></td></tr></tbody></table></ix:nonNumeric></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_794" contextRef="From2025-01-01to2025-03-31" name="cxdo:ContractLiabilitiesPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Contract Liabilities </strong><strong>&#8211;&#160;</strong>Our contract liabilities consist primarily of advance consideration received from customers for telecommunications contracts. The product and monthly service revenue is recognized on completion of the implementation and the remaining activation fees are reclassified as contract liabilities.</p></ix:nonNumeric></ix:continuation><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">10</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_2f50e5" continuedAt="cont_1aeb41"><ix:nonNumeric id="fid_795" contextRef="From2025-01-01to2025-03-31" name="us-gaap:UseOfEstimates" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Use of Estimates </strong><strong>&#8211; </strong>In preparing the consolidated financial statements, management makes assumptions, estimates and judgments that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the dates of the consolidated financial statements and the reported amounts of net sales and expenses during the reported periods.&#160;&#160;Specific estimates and judgments include valuation of goodwill and intangible assets in connection with business acquisitions and asset acquisitions, allowances for doubtful accounts, uncertainties related to certain income tax benefits, valuation of deferred income tax assets, valuations of share-based payments, annual incentive bonuses accrual, recoverability of long-lived assets and intangible assets, and product warranty liabilities.&#160; Management&#8217;s estimates are based on historical experience and on our expectations that are believed to be reasonable.&#160;&#160;The combination of these factors forms the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources.&#160;&#160;Actual results may differ from our current estimates and those differences may be material.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_796" contextRef="From2025-01-01to2025-03-31" name="us-gaap:CommitmentsAndContingenciesPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>C</strong><strong>ontingencies </strong><strong>&#8211; </strong>The Company accrues for claims and contingencies when losses become probable and reasonably estimable. As of the end of each applicable reporting period, the Company reviews each of its matters and, where it is probable that a liability has been or will be incurred, it accrues for all probable and reasonably estimable losses. Where the Company can reasonably estimate a range of losses it may incur regarding such a matter, it records an accrual for the amount within the range that constitutes its best estimate. If the Company can reasonably estimate a range but no amount within the range appears to be a better estimate than any other, it uses the amount that is the low end of such range.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_797" contextRef="From2025-01-01to2025-03-31" name="cxdo:RevenueRecognitionSalesOfServicesPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Service, Software Solutions and Product Revenue Recognition </strong><strong>&#8211; </strong>Revenue is recognized upon transfer of control of promised services, software solutions or products to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services and excludes any amounts collected on behalf of third parties. We enter into contracts that can include various combinations of products and services, which are generally capable of being distinct and accounted for as separate performance obligations. We recognize revenue for delivered elements only when we determine there are no uncertainties regarding customer acceptance. Changes in the allocation of the sales price between delivered and undelivered elements can impact the timing of revenue recognized but does not change the total revenue recognized on any agreement. Revenue is recognized net of any taxes collected from customers, which are subsequently remitted to governmental authorities. For more detailed information about revenue, see Note 2.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_798" contextRef="From2025-01-01to2025-03-31" name="cxdo:CostOfServiceRevenuePolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Cost of Service Revenue </strong><strong>&#8211; </strong>Cost of service revenue includes cloud telecommunications services. Cloud telecommunications cost of service revenue primarily consists of fees we pay to third-party telecommunications and broadband Internet providers, costs of other third-party services we resell, personnel and travel expenses related to system implementation, and customer service. </p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_799" contextRef="From2025-01-01to2025-03-31" name="cxdo:CostOfSoftwareSolutionsRevenuePolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Cost of Software Solutions Revenue </strong><strong>&#8211; </strong>Cost of software solutions revenue consists primarily of royalties and other fees paid to third parties whose technology or products are sold as part of the Company&#8217;s products, direct costs to manufacture and distribute products, direct costs to provide product support and professional support services, direct costs associated with delivery of the Company&#8217;s software offerings, and amortization expense related to developed technology intangible assets.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_800" contextRef="From2025-01-01to2025-03-31" name="cxdo:CostOfProductRevenuePolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Cost of Product Revenue </strong><strong>&#8211; </strong>Cost of product revenue primarily consists of the costs associated with the purchase of desktop devices and other third-party equipment we purchase for resale.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_801" contextRef="From2025-01-01to2025-03-31" name="us-gaap:StandardProductWarrantyPolicy" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Product Warranty &#8211; </strong>We provide for the estimated cost of product warranties at the time we recognize revenue.&#160; We evaluate our warranty obligations on a product group basis. Our standard product warranty terms generally include post-sales support and repairs or replacement of a product at no additional charge for a specified period of time. We base our estimated warranty obligation upon warranty terms, ongoing product failure rates, and current period product shipments. If actual product failure rates, repair rates or any other post-sales support costs were to differ from our estimates, we would be required to make revisions to the estimated warranty liability. Warranty terms generally last for the duration that the customer has service. &#160;</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_802" contextRef="From2025-01-01to2025-03-31" name="cxdo:ContingentConsiderationPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Contingent Consideration </strong><strong>&#8211; </strong>Contingent consideration represents deferred business acquisition and asset acquisition consideration to be paid out at some point in the future, typically over a one-year period or less from the acquisition date. Contingent consideration is recorded at the asset acquisition date fair value. Contingent consideration recorded in connection with a business acquisition is reported at fair value each reporting period until the contingency is resolved. Any changes in fair value are recognized in earnings. Contingent consideration recorded in connection with an asset acquisition is not derecognized until the related contingency is resolved and the consideration is paid or becomes payable. If the amount initially recorded as contingent consideration exceeds the amount paid or payable, the Company recognizes that excess amount as a reduction in the cost of the related intangible assets.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_803" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ResearchAndDevelopmentExpensePolicy" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <strong>Research and Development &#8211; </strong>Research and development expenses consist primarily of personnel and related expenses for the Company&#8217;s research and development staff, including salaries, benefits, bonuses and stock-based compensation and the cost of certain third-party contractors. Research and development costs are expensed as incurred. Costs related to internally developed software are expensed as research and development expense until technological feasibility has been achieved, after which the costs are capitalized.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_804" contextRef="From2025-01-01to2025-03-31" name="us-gaap:FairValueMeasurementPolicyPolicyTextBlock" escape="true" continuedAt="cont_a70e1f"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Fair Value Measurements </strong><strong>&#8211; </strong>The fair value of our financial assets and liabilities was determined based on three levels of inputs, of which the first two are considered observable and the last unobservable, that may be used to measure fair value which are the following:&#160;</p></ix:nonNumeric></ix:continuation><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">11</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_1aeb41" continuedAt="cont_fe5b1f"><ix:continuation id="cont_a70e1f"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0.5in; text-align:justify;"><em>Level 1</em> &#8212; Unadjusted quoted prices that are available in active markets for the identical assets or liabilities at the measurement date.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0.5in; text-align:justify;"><em>Level 2</em> &#8212; Other observable inputs available at the measurement date, other than quoted prices included in Level 1, either directly or indirectly, including:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:8%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;">Quoted prices for similar assets or liabilities in active markets;</td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;">Quoted prices for identical or similar assets in non-active markets;</td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;">Inputs other than quoted prices that are observable for the asset or liability; and</td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;">Inputs that are derived principally from or corroborated by other observable market data.</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;"><em>Level 3</em> &#8212; Unobservable inputs that cannot be corroborated by observable market data and reflect the use of significant management judgment. These values are generally determined using pricing models for which the assumptions utilize management&#8217;s estimates of market participant assumptions.</p></ix:continuation><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_805" contextRef="From2025-01-01to2025-03-31" name="us-gaap:LesseeLeasesPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Lease Obligations</strong><strong>&#8211;</strong>We determine if an agreement is a lease at inception. We evaluate the lease terms to determine whether the lease will be accounted for as an operating or finance lease. Operating leases are included in operating lease right-of-use (&#8220;ROU&#8221;) assets, operating lease liabilities, current portion, and operating lease liabilities, net of current portion in our consolidated balance sheets.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. 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 in determining the present value of lease payments. We use the implicit rate when readily determinable. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. 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 lease payments is recognized on a straight-line basis over the lease term.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">A lease that transfers substantially all of the benefits and risks incidental to ownership of property are accounted for as finance leases. At the inception of a finance lease, an asset and finance lease obligation is recorded at an amount equal to the lesser of the present value of the minimum lease payments and the property&#8217;s fair market value. Finance lease obligations are classified as either current or long-term based on the due dates of future minimum lease payments, net of interest.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_806" contextRef="From2025-01-01to2025-03-31" name="us-gaap:DebtPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Notes Payable</strong><strong>&#8211;</strong>We record notes payable net of any discounts or premiums. Discounts and premiums are amortized as interest expense or income over the life of the note in such a way as to result in a constant rate of interest when applied to the amount outstanding at the beginning of any given period.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_807" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncomeTaxPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Income Taxes &#8211;</strong>We recognize a liability or asset for the deferred tax consequences of all temporary differences between the tax basis of assets and liabilities and their reported amounts in the consolidated financial statements that will result in taxable or deductible amounts in future years when the reported amounts of the assets and liabilities are recovered or settled. Accruals for uncertain tax positions are provided for in accordance with accounting guidance. Accordingly, we may recognize the tax benefits from an uncertain tax position only if it is more-likely-than-not that the tax position will be sustained on examination by the taxing authorities, based on the technical merits of the position. The tax benefits recognized in the financial statements from such a position should be measured based on the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement. Accounting guidance is also provided on de-recognition of income tax assets and liabilities, classification of current and deferred income tax assets and liabilities, accounting for interest and penalties associated with tax positions, and income tax disclosures. Judgment is required in assessing the future tax consequences of events that have been recognized in the financial statements or tax returns. Variations in the actual outcome of these future tax consequences could materially impact our financial position, results of operations, and cash flows. In assessing the need for a valuation allowance, we evaluate all significant available positive and negative evidence, including historical operating results, estimates of future taxable income and the existence of prudent and feasible tax planning strategies. At December 31, 2024, we determined that it is more likely-than-not that we will not be able to realize our deferred income tax assets in the future. A valuation allowance of $<ix:nonFraction id="fid_1626" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,417</ix:nonFraction> and $<ix:nonFraction id="fid_1631" contextRef="From2024-01-01to2024-12-31" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,417</ix:nonFraction> was recorded against our gross deferred tax asset balance as of March 31, 2025 and December 31, 2024, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Interest and penalties associated with income taxes are classified as income tax expense in the condensed consolidated statements of operations.</p></ix:nonNumeric></ix:continuation><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">12</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_fe5b1f"><ix:nonNumeric id="fid_808" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Stock-Based Compensation</strong><strong>&#8211;</strong>For equity-classified awards, compensation expense is recognized over the requisite service period based on the computed fair value on the grant date of the award. Equity classified awards include the issuance of stock options and restricted stock units (&#8220;RSUs&#8221;).</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_809" contextRef="From2025-01-01to2025-03-31" name="us-gaap:SegmentReportingPolicyPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Operating Segments</strong><strong>&#8211;</strong>Accounting guidance establishes standards for the way public business enterprises are to report information about operating segments in annual financial statements and requires enterprises to report selected information about operating segments in financial reports issued to stockholders. The Company has reorganized into two operating segments, which consist of cloud telecommunications services and software solutions. The software solutions segment includes the results of operation of NetSapiens, LLC, NSHC, Inc., NetSapiens Canada, Inc., and NetSapiens International Limited. The cloud telecommunications segment includes the results of operations of Allegiant Networks, LLC, Crexendo Business Solutions, Inc., Crexendo International, Inc., and Crexendo Business Solutions of Virginia, Inc. We generate 96% of our total revenue from customers within the United States and <ix:nonFraction id="fid_1635" contextRef="From2025-01-01to2025-03-31_cxdo_OtherCountriesMember" name="cxdo:RevenueConcentrationRiskPercentage" decimals="INF" unitRef="Pure" scale="-2">4</ix:nonFraction>% of our total revenues from customers in other parts of the world.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_810" contextRef="From2025-01-01to2025-03-31" name="us-gaap:MajorCustomersPolicyPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Significant Customers</strong><strong>&#8211;</strong>No customer accounted for <ix:nonFraction id="fid_1627" contextRef="From2025-01-01to2025-03-31" name="cxdo:RevenueConcentrationRiskPercentage" decimals="INF" unitRef="Pure" scale="-2">10</ix:nonFraction>% or more of our total revenue for the three months ended March 31, 2025 and 2024. No customer accounted for <ix:nonFraction id="fid_1632" contextRef="From2025-01-01to2025-03-31" name="cxdo:AccountsReceivableConcentrationRiskPercentage" decimals="INF" unitRef="Pure" scale="-2">10</ix:nonFraction>% or more of our total trade accounts receivable as of March 31, 2025 and December 31, 2024.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_811" contextRef="From2025-01-01to2025-03-31" name="cxdo:RecentlyAdoptedAccountingPronouncementsPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Recently Adopted Accounting Pronouncements</strong><strong>&#8211;</strong> In November 2023, the FASB issued ASU 2023-07, <em>Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosure</em>, to require a public entity to disclose significant segment expenses and other segment items on an annual and interim basis and to provide in interim periods all disclosures about a reportable segment&#8217;s profit or loss and assets that are currently required annually. The Company adopted ASU 2023-07 (Topic 280) on a retrospective basis as of December 31, 2024, adding significant segment expense disclosures for the years ended December 31, 2024 and 2023. For more detailed information about reportable segments, see Note 16.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">In December 2023, the FASB issued ASU 2023-09, <em>Income Taxes (Topic 740): Improvements to Income Tax Disclosures</em>, to enhance the transparency and decision-usefulness of income tax disclosures, particularly in the rate reconciliation table and disclosures about income taxes paid. The ASU&#8217;s amendments are effective for annual periods beginning after December 15, 2024 on a prospective basis. Early adoption is permitted. The Company adopted ASU 2023-09 (Topic 740) as of January 1, 2025, the adoption of this ASU did not have a material impact on our quarterly income tax disclosures in our condensed consolidated financial statements and related disclosures.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_812" contextRef="From2025-01-01to2025-03-31" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Recently Issued Accounting Pronouncements</strong><strong>&#8211;</strong> In November 2024, the FASB issued ASU No. 2024-03, &#8220;<em>Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses.</em>&#8221; ASU 2024-03 requires a public business entity (&#8220;PBE&#8221;) to disclose information in the notes to financial statements about purchases of inventory, employee compensation, depreciation, intangible asset amortization, and depletion for each income statement line item that contains those expenses. Entities would also have to disclose other specific expenses, gains, or losses that are already required to be disclosed under GAAP in this same disclosure, a qualitative description of the amounts remaining that are not separately disaggregated quantitatively, and the total amount of selling expenses, as well as the PBE&#8217;s definition of selling expenses. In January 2025, the FASB Issued ASU No. 2025-01, "<em>Income Statement&#8212;Reporting Comprehensive Income&#8212;Expense Disaggregation Disclosures (Subtopic 220-40),</em>" which clarified that ASU 2024-03 is effective public business entities for annual reporting periods beginning after December 15, 2026 and interim reporting periods within annual reporting periods beginning after December 15, 2027. Implementation of ASU 2024-03 may be applied prospectively or retrospectively. The application of this new guidance is not expected to have a material impact on the Company&#8217;s financial statements, as the guidance pertains only to disclosures.</p></ix:nonNumeric></ix:continuation><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_759" contextRef="From2025-01-01to2025-03-31" name="us-gaap:RevenueFromContractWithCustomerTextBlock" escape="true" continuedAt="cont_72f2b9"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>2. Revenue</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Revenue is measured based on a consideration specified in a contract with a customer, and excludes any sales incentives and amounts collected on behalf of third parties. The Company recognizes revenue when it satisfies a performance obligation by transferring control over a product, service, or software solution to a customer. Taxes assessed by a governmental authority that are both imposed on and concurrent with a specific revenue-producing transaction, that are collected by the Company from a customer, are excluded from revenue. The following is a description of principal activities &#8211; separated by reportable segments &#8211; from which the Company generates its revenue.&#160; For more detailed information about reportable segments, see Note 16.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">13</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_72f2b9" continuedAt="cont_26d97e"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><em>Cloud Telecommunications Services Segment </em></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Products and services may be sold separately or in bundled packages. The typical length of a contract for service is thirty-nine to ninety months. Customers are billed for these services on a monthly basis. For bundled packages, the Company accounts for individual products and services separately if they are distinct &#8211; i.e. if a product or service is separately identifiable from other items in the bundled package and if a customer can benefit from it on its own or with other resources that are readily available to the customer. The consideration (including any discounts) is allocated between separate products and services in a bundle based on their relative stand-alone selling prices. The stand-alone selling prices are determined based on the prices at which the Company separately sells the desktop devices and telecommunication services. For items that are not sold separately (e.g. additional features) the Company estimates stand-alone selling prices using the adjusted market assessment approach. When we provide a free trial period, we do not begin to recognize recurring revenue until the trial period has ended and the customer has been billed for the services.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Desktop Devices</em><strong> &#8211;&#160;</strong>Revenue generated from the sale of telecommunications equipment (desktop devices) is recognized when the customer takes possession of the devices and the cloud telecommunications services begin. The Company typically bills and collects the fees for the equipment upon entering into a contract with a customer. Cash receipts are recorded as a contract liability until implementation is complete and the services begin. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Equipment Financing Revenue</em><strong> &#8211;&#160;</strong>Fees generated from renting our cloud telecommunication equipment (IP or cloud telephone desktop devices) through leasing contracts are recognized as revenue based on whether the lease qualifies as an operating lease or sales-type lease. The two primary accounting provisions which we use to classify transactions as sales-type or operating leases are: 1) lease term to determine if it is equal to or greater than 75% of the economic life of the equipment and 2) the present value of the minimum lease payments to determine if they are equal to or greater than 90% of the fair market value of the equipment at the inception of the lease. The economic life of most of our products is estimated to be three years, since this represents the most frequent contractual lease term for our products, and there is no residual value for used equipment. Residual values, if any, are established at the lease inception using estimates of fair value at the end of the lease term. The vast majority of our leases that qualify as sales-type leases are non-cancelable and include cancellation penalties approximately equal to the full value of the lease receivables. Leases that do not meet the criteria for sales-type lease accounting are accounted for as operating leases. Revenue from sales-type leases is recognized upon installation and the interest portion is deferred and recognized as earned. Revenue from operating leases in recognized ratably over the applicable service period.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Cloud Telecommunications Services</em><strong> &#8211;&#160;</strong>Cloud telecommunication services include voice, data, collaboration software, broadband Internet access, managed IT services, cloud server rental and support, managed security, cabling, software license sales, interest generated from equipment financing revenue, and support for premise-based PBX phone systems. The Company recognizes revenue as services are provided in service revenue. Fees generated from reselling broadband Internet access are recognized as revenue net of the costs charged by the third-party service providers. Cloud telecommunications services are billed and paid on a monthly basis. Our telecommunications services contracts typically have a term of thirty-nine to ninety months.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Fees, Commissions, and Other, Recognized over Time</em><strong> &#8211;&#160;</strong>Includes contracted and non-contracted items such as:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:8%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Contracted activation and flash fees &#8211; The Company generally allocates a portion of the activation fees to the desktop devices, which is recognized at the time of the installation or customer acceptance, and a portion to the service, which is recognized over the contract term using the straight-line method.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Non-contracted carrier cost recovery fee &#8211; This fee recovers the various costs and expenses that the Company incurs in connection with complying with legal, regulatory, and other requirements, including without limitation federal, state, and local reporting and filing requirements. This fee is assessed as a set percentage of our monthly billing and is recognized monthly.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Non-contracted administrative fees &#8211; Administrative fees are recognized as revenue on a monthly basis.</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>One-Time Fees, Commissions, and Other</em><strong> &#8211;&#160;</strong>Includes contracted and non-contracted items such as:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:8%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Contracted professional service revenue &#8211; Professional service revenue includes professional installation services, custom integration, and other professional services. The Company typically bills and collects professional service revenue upon entering into a contract with a customer. Professional service revenue is recognized as revenue when the performance obligations are completed.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Non-contracted cancellation fees &#8211; These cancellation fees relate to remaining contractual term buyout payments in connection with early cancellation and are billed and recognized as revenue upon receipt.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Other non-contracted fees &#8211; These fees include disconnect fees, shipping fees, restocking fees, and porting fees. Other non-contracted fees are recognized as revenue upon receipt of payment.</p></td></tr></tbody></table></ix:continuation><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">14</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_26d97e" continuedAt="cont_eb6b3d"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><em>Software Solutions Segment</em></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Software Solutions segment derives revenues from three primary sources: software licenses, software maintenance support and professional services. Software and services may be sold separately or in bundled packages. Generally, contracts with customers contain multiple performance obligations, consisting of software and services. For bundled packages, the Company accounts for individual products and services separately if they are distinct &#8211; i.e. if a product or service is separately identifiable from other items in the bundled package and if a customer can benefit from it on its own or with other resources that are readily available to the customer. The consideration (including any discounts) is allocated between separate products and services in a bundle based on their relative stand-alone selling prices. The stand-alone selling prices are determined based on the prices at which the Company separately sells the software licenses and professional services.&#160; For items that are not sold separately (e.g. additional features) the Company estimates stand-alone selling prices using the adjusted market assessment approach. When we provide a free trial period, we do not begin to recognize recurring revenue until the trial period has ended and the customer has been billed for the services.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Software Licenses</em><strong> - </strong>The Company's software licenses typically provide a perpetual right to use the Company's software. The Company also sells term-based software licenses that expire and Software-as-a-Service ("SaaS") based software which are referred to as subscription arrangements. The Company does not customize its software nor are installation services required, as the customer has a right to utilize internal resources or a third-party service company. The software is delivered before related services are provided and are functional without professional services or customer support. The Company has concluded that its software licenses are functional intellectual property that are distinct, as the user can benefit from the software on its own. The software license revenue could be recognized upon transfer of control or when the software is made available for download, as this is the point that the user of the software can direct the use of, and obtain substantially all of the remaining benefits from, the functional intellectual property. However, historical experience shows that customers regularly renegotiate the number of licenses during the installation process.&#160; Therefore, the Company recognizes revenue from software licenses when the setup is complete.&#160; The Company does not recognize software revenue related to the renewal of subscription software licenses earlier than the beginning of the subscription period. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:8%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>SNAPsolution&#174;</em> - a comprehensive, IP-based platform that provides a broad suite of UC services including hosted Private Branch Exchange (PBX), auto-attendant, call center, conferencing, and mobility. The platform includes a broad range of feature-sets, custom-built to provide unprecedented levels of flexibility, making the solution competitive with the market&#8217;s leading players. SNAPsolution includes a full suite of Voice over Internet Protocol (VoIP)/UC features with one low cost universal license, as opposed to pricing each feature individually. The Company licenses its platform based on concurrent sessions, not per seat/per feature. This allows service providers to oversubscribe their networks, driving down the cost per seat as volume increases. As the service provider increases their customer base, they only have to ensure they have sufficient concurrent call licenses to support users across the network. The Company recognizes one-time upfront software license revenue when the software setup is complete.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;">&#160;</p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>SNAPaccel &#8211; a </em>Software-as-a-Service ("SaaS") based software license referred to as subscription arrangements. The Company recognizes revenue as subscriptions are provided in service revenue on a monthly basis.</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Subscription Maintenance and Support -</em><strong> </strong>Subscription maintenance and support revenue includes revenue from maintenance service contracts, customer support, and other supportive services. The Company offers warranties on its products. The warranty period for the Company&#8217;s licensed software is generally 90 days. Certain of the Company's warranties are considered to be assurance-type in nature and do not cover anything beyond ensuring that the product is functioning as intended. Based on the guidance in ASC 606, assurance-type warranties do not represent separate performance obligations. The Company also sells separately-priced maintenance service contracts, which qualify as service-type warranties and represent separate performance obligations. The Company does not typically allow and has no history of accepting material product returns.&#160; Customer support includes software updates on a when-and-if-available basis, telephone support, integrated web-based support and bug fixes or patches. Subscription and maintenance support revenue is recognized ratably over the term of the customer support agreement, which is typically one year. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><em>Professional Services and Other - </em>The Company's professional services include consulting, technical support, resident engineer services, design services and installation services. Revenue from professional services and other is recognized when the performance obligation is complete and the customer has accepted the performance obligation.</p></ix:continuation><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">15</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_eb6b3d" continuedAt="cont_9e8e02"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong><em>Disaggregation of Revenue</em></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">In the following table, revenue is disaggregated by primary major product line, and timing of revenue recognition. The table also includes a reconciliation of the disaggregated revenue with the reportable segments.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_816" contextRef="From2025-01-01to2025-03-31" name="us-gaap:DisaggregationOfRevenueTableTextBlock" escape="true" continuedAt="cont_cc9e45"><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Three Months Ended March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cloud</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Software</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Telecommunications</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Solutions</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Reportable</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segments</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Major products/services lines</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Desktop devices</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1921" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:DesktopServices" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,007</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1945" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:DesktopServices" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1969" contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember" name="cxdo:DesktopServices" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,007</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Equipment financing revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1922" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:InterestReceivedOnEquipmentFinancing" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">198</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1946" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:InterestReceivedOnEquipmentFinancing" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1970" contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember" name="cxdo:InterestReceivedOnEquipmentFinancing" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">198</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Telecommunications services</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1923" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:TelecommunicationsServices" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,933</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1947" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:TelecommunicationsServices" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1971" contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember" name="cxdo:TelecommunicationsServices" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,933</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Fees, commissions, and other, recognized over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1924" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:FeesCommissionsAndOtherRecognizedOverTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">598</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1948" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:FeesCommissionsAndOtherRecognizedOverTime" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1972" contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember" name="cxdo:FeesCommissionsAndOtherRecognizedOverTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">598</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">One time fees, commissions and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1925" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:OneTimeFeesCommissionsAndOther" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">453</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1949" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:OneTimeFeesCommissionsAndOther" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1973" contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember" name="cxdo:OneTimeFeesCommissionsAndOther" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">453</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software licenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1926" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:SoftwareLicenses" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1950" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:SoftwareLicenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,011</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1974" contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember" name="cxdo:SoftwareLicenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,011</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Subscription maintenance and support</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1927" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:SubscriptionMaintenanceAndSupport" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1951" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:SubscriptionMaintenanceAndSupport" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,587</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1975" contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember" name="cxdo:SubscriptionMaintenanceAndSupport" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,587</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Professional services and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1928" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="us-gaap:ProfessionalFees" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1952" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember" name="us-gaap:ProfessionalFees" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">270</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1976" contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember" name="us-gaap:ProfessionalFees" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">270</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1929" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,189</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1953" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,868</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1977" contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">16,057</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Timing of revenue recognition</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Products, services, and fees recognized at a point in time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1930" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,460</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1954" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,281</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1978" contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember" name="cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,741</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Products, services, and fees transferred over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1931" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:ProductsServicesAndFeesTransferredOverTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">7,729</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1955" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:ProductsServicesAndFeesTransferredOverTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,587</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1979" contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember" name="cxdo:ProductsServicesAndFeesTransferredOverTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">12,316</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1932" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:RevenueRecognition" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,189</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1956" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:RevenueRecognition" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,868</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1980" contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember" name="cxdo:RevenueRecognition" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">16,057</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_cc9e45"><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Three Months Ended March 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cloud</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Software</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Telecommunications</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Solutions</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Reportable</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segments</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Major products/services lines</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Desktop devices</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1933" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:DesktopServices" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,295</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1957" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:DesktopServices" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1981" contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember" name="cxdo:DesktopServices" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,295</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Equipment financing revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1934" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:InterestReceivedOnEquipmentFinancing" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">152</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1958" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:InterestReceivedOnEquipmentFinancing" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1982" contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember" name="cxdo:InterestReceivedOnEquipmentFinancing" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">152</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Telecommunications services</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1935" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:TelecommunicationsServices" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,627</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1959" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:TelecommunicationsServices" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1983" contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember" name="cxdo:TelecommunicationsServices" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,627</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Fees, commissions, and other, recognized over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1936" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:FeesCommissionsAndOtherRecognizedOverTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">500</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1960" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:FeesCommissionsAndOtherRecognizedOverTime" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1984" contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember" name="cxdo:FeesCommissionsAndOtherRecognizedOverTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">500</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">One time fees, commissions and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1937" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:OneTimeFeesCommissionsAndOther" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">566</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1961" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:OneTimeFeesCommissionsAndOther" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1985" contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember" name="cxdo:OneTimeFeesCommissionsAndOther" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">566</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software licenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1938" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:SoftwareLicenses" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1962" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:SoftwareLicenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">947</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1986" contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember" name="cxdo:SoftwareLicenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">947</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Subscription maintenance and support</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1939" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:SubscriptionMaintenanceAndSupport" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1963" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:SubscriptionMaintenanceAndSupport" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,911</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1987" contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember" name="cxdo:SubscriptionMaintenanceAndSupport" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,911</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Professional services and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1940" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="us-gaap:ProfessionalFees" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1964" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember" name="us-gaap:ProfessionalFees" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">288</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1988" contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember" name="us-gaap:ProfessionalFees" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">288</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1941" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,140</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1965" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,146</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1989" contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">14,286</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Timing of revenue recognition</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Products, services, and fees recognized at a point in time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1942" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,861</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1966" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,179</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1990" contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember" name="cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,040</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Products, services, and fees transferred over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1943" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:ProductsServicesAndFeesTransferredOverTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">7,279</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1967" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:ProductsServicesAndFeesTransferredOverTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,967</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1991" contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember" name="cxdo:ProductsServicesAndFeesTransferredOverTime" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">11,246</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1944" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember" name="cxdo:RevenueRecognition" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,140</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1968" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember" name="cxdo:RevenueRecognition" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,146</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1992" contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember" name="cxdo:RevenueRecognition" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">14,286</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:continuation><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong><em>Contract balances</em></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; The following table provides information about receivables, contract assets, and contract liabilities from contracts with customers:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_817" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Receivables, which are included in trade receivables, net of allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1996" contextRef="AsOf2025-03-31" name="us-gaap:OtherReceivables" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,060</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1993" contextRef="AsOf2024-12-31" name="us-gaap:OtherReceivables" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,352</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Contract assets, net of allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1997" contextRef="AsOf2025-03-31" name="us-gaap:DepositContractsAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">419</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1994" contextRef="AsOf2024-12-31" name="us-gaap:DepositContractsAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">406</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Contract liabilities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1998" contextRef="AsOf2025-03-31" name="us-gaap:DepositContractsLiabilities" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,038</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1995" contextRef="AsOf2024-12-31" name="us-gaap:DepositContractsLiabilities" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,372</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric></ix:continuation><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">16</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_9e8e02"><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">Significant changes in the contract assets and the contract liabilities balances during the period are as follows:</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><ix:nonNumeric id="fid_818" contextRef="From2025-01-01to2025-03-31" name="cxdo:ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>For the Year Ended</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Contract</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Assets</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Contract</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Liabilities</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Contract</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Assets</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Contract</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Liabilities</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Revenue recognized that was included in the contract liability balance at the beginning of the period</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2007" contextRef="From2025-01-01to2025-03-31_cxdo_ContractAssetsMember" name="cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2011" contextRef="From2025-01-01to2025-03-31_cxdo_ContractLiabilitiesMember" name="cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">1,916</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1999" contextRef="From2024-01-01to2024-12-31_cxdo_ContractAssetsMember" name="cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2000" contextRef="From2024-01-01to2024-12-31_cxdo_ContractLiabilitiesMember" name="cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">3,154</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Increase due to cash received, excluding amounts recognized as revenue during the period</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2008" contextRef="From2025-01-01to2025-03-31_cxdo_ContractAssetsMember" name="cxdo:IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2012" contextRef="From2025-01-01to2025-03-31_cxdo_ContractLiabilitiesMember" name="cxdo:IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,582</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2001" contextRef="From2024-01-01to2024-12-31_cxdo_ContractAssetsMember" name="cxdo:IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2002" contextRef="From2024-01-01to2024-12-31_cxdo_ContractLiabilitiesMember" name="cxdo:IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,938</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Transferred to receivables from contract assets recognized at the beginning of the period, net of allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2009" contextRef="From2025-01-01to2025-03-31_cxdo_ContractAssetsMember" name="cxdo:TransferredToReceivablesFromContractAssetsRecognized" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">83</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2013" contextRef="From2025-01-01to2025-03-31_cxdo_ContractLiabilitiesMember" name="cxdo:TransferredToReceivablesFromContractAssetsRecognized" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2003" contextRef="From2024-01-01to2024-12-31_cxdo_ContractAssetsMember" name="cxdo:TransferredToReceivablesFromContractAssetsRecognized" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">302</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2004" contextRef="From2024-01-01to2024-12-31_cxdo_ContractLiabilitiesMember" name="cxdo:TransferredToReceivablesFromContractAssetsRecognized" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Increase due to additional unamortized discounts</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2010" contextRef="From2025-01-01to2025-03-31_cxdo_ContractAssetsMember" name="cxdo:IncreaseDueToAdditionalUnamortizedDiscounts" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">96</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2014" contextRef="From2025-01-01to2025-03-31_cxdo_ContractLiabilitiesMember" name="cxdo:IncreaseDueToAdditionalUnamortizedDiscounts" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2005" contextRef="From2024-01-01to2024-12-31_cxdo_ContractAssetsMember" name="cxdo:IncreaseDueToAdditionalUnamortizedDiscounts" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">366</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2006" contextRef="From2024-01-01to2024-12-31_cxdo_ContractLiabilitiesMember" name="cxdo:IncreaseDueToAdditionalUnamortizedDiscounts" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><em>Contract assets and allowance for credit losses</em></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our contract assets balance consists of the Company&#8217;s rights to consideration for work completed but not billed as of the reporting date. The contract assets are transferred to receivables when the rights become unconditional. Contract assets were as follows (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_819" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td/><td style="white-space: nowrap;"/><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"/><td style="white-space: nowrap;"/><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"/></tr><tr style="height:15px"><td/><td style="white-space: nowrap;"/><td class="hdcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2025</strong></p></td><td style="white-space: nowrap;"/><td style="white-space: nowrap;"/><td class="hdcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2024</strong></p></td><td style="white-space: nowrap;"/></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;">Gross contract assets</td><td style="width:1%;white-space: nowrap;"/><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2015" contextRef="AsOf2025-03-31" name="cxdo:DepositContractsAssetsGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">541</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"/><td style="width:1%;white-space: nowrap;"/><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2016" contextRef="AsOf2024-12-31" name="cxdo:DepositContractsAssetsGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">533</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"/></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;">Less: allowance for credit losses</td><td style="width:1%;white-space: nowrap;"/><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"/><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2017" contextRef="AsOf2025-03-31" name="cxdo:AllowanceforcreditlossesofContractAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">122</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"/><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"/><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2018" contextRef="AsOf2024-12-31" name="cxdo:AllowanceforcreditlossesofContractAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">127</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;">Contract assets, net of allowance for credit losses</td><td style="width:1%;white-space: nowrap;"/><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2019" contextRef="AsOf2025-03-31" name="us-gaap:DepositContractsAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">419</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"/><td style="width:1%;white-space: nowrap;"/><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2020" contextRef="AsOf2024-12-31" name="us-gaap:DepositContractsAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">406</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"/></tr><tr style="height:15px;background-color:#ffffff"><td/><td style="width:1%;white-space: nowrap;"/><td style="width:1%;white-space: nowrap;"/><td class="ffcell" style="width:9%;"/><td style="width:1%;white-space: nowrap;"/><td style="width:1%;white-space: nowrap;"/><td style="width:1%;white-space: nowrap;"/><td class="ffcell" style="width:9%;"/><td style="width:1%;white-space: nowrap;"/></tr><tr style="height:15px;background-color:#cceeff"><td/><td style="width:1%;white-space: nowrap;"/><td style="width:1%;white-space: nowrap;"/><td class="ffcell" style="width:9%;"/><td style="width:1%;white-space: nowrap;"/><td style="width:1%;white-space: nowrap;"/><td style="width:1%;white-space: nowrap;"/><td class="ffcell" style="width:9%;"/><td style="width:1%;white-space: nowrap;"/></tr></tbody></table></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">The allowance for credit losses was as follows (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_820" contextRef="From2025-01-01to2025-03-31" name="us-gaap:SecuritiesBorrowedAllowanceForCreditLossTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2025" contextRef="AsOf2024-12-31" name="cxdo:AllowancesForCreditLossesOfContractAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">127</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Provision</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2021" contextRef="From2025-01-01to2025-03-31" name="cxdo:AllowanceForCreditLossesOfContractAssetsProvision" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Write-offs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2022" contextRef="From2025-01-01to2025-03-31" name="cxdo:FinancingReceivableAllowancesForCreditLossesWriteOffs" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Recoveries and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_2023" contextRef="From2025-01-01to2025-03-31" name="cxdo:FinancingReceivableAllowanceForCreditLossesRecoveryOthers" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">3</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2024" contextRef="AsOf2025-03-31" name="cxdo:AllowanceForCreditLossesOfContractAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">122</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The allowance for credit losses is determined based on an assessment of historical collection experience using the loss-rate method as well as consideration of current and future economic conditions and changes in our loss-rate trends. <ix:nonNumeric id="fid_2052" contextRef="From2025-01-01to2025-03-31" name="cxdo:AllowanceForCreditLossesDescriptionOfPeriod">We utilize a five-year lookback period to establish our estimate of expected credit losses, as our contractual terms range from three to five years</ix:nonNumeric>. Based on that assessment, the allowance for credit losses as a percent of gross contract assets decreased to <ix:nonFraction id="fid_2051" contextRef="AsOf2025-03-31" name="cxdo:AllowanceForCreditLossesAsPercentOfGrossContractAssets" decimals="INF" unitRef="Pure" scale="-2">22.5</ix:nonFraction>% at March 31, 2025 from <ix:nonFraction id="fid_2050" contextRef="AsOf2024-12-31" name="cxdo:AllowanceForCreditLossesAsPercentOfGrossContractAssets" decimals="INF" unitRef="Pure" scale="-2">23.8</ix:nonFraction>% at December 31, 2024.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><em>Transaction price allocated to the remaining performance obligations</em></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The following table includes estimated revenue expected to be recognized in the future related to performance obligations that are unsatisfied (or partially unsatisfied) at the end of the reporting period from the cloud telecommunications services segment (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_821" contextRef="From2025-01-01to2025-03-31" name="us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2026</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2027</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2028</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2029 and thereafter</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Desktop devices</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2033" contextRef="AsOf2025-03-31_cxdo_DesktopDevicesMember" name="us-gaap:PurchaseObligationDueInSecondYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">621</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2034" contextRef="AsOf2025-03-31_cxdo_DesktopDevicesMember" name="us-gaap:PurchaseObligationDueInThirdYear" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2035" contextRef="AsOf2025-03-31_cxdo_DesktopDevicesMember" name="us-gaap:PurchaseObligationDueInFourthYear" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2036" contextRef="AsOf2025-03-31_cxdo_DesktopDevicesMember" name="us-gaap:PurchaseObligationDueInFifthYear" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2037" contextRef="AsOf2025-03-31_cxdo_DesktopDevicesMember" name="us-gaap:PurchaseObligationDueAfterFifthYear" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2038" contextRef="AsOf2025-03-31_cxdo_DesktopDevicesMember" name="us-gaap:PurchaseObligation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">621</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Telecommunications services</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2026" contextRef="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember" name="us-gaap:PurchaseObligationDueInSecondYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">17,729</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2039" contextRef="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember" name="us-gaap:PurchaseObligationDueInThirdYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">16,115</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2040" contextRef="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember" name="us-gaap:PurchaseObligationDueInFourthYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">11,090</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2041" contextRef="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember" name="us-gaap:PurchaseObligationDueInFifthYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,695</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2042" contextRef="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember" name="us-gaap:PurchaseObligationDueAfterFifthYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,433</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2043" contextRef="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember" name="us-gaap:PurchaseObligation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">54,062</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software Solutions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2044" contextRef="AsOf2025-03-31_cxdo_SoftwareSolutionsMember" name="us-gaap:PurchaseObligationDueInSecondYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">11,933</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2045" contextRef="AsOf2025-03-31_cxdo_SoftwareSolutionsMember" name="us-gaap:PurchaseObligationDueInThirdYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">7,699</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2046" contextRef="AsOf2025-03-31_cxdo_SoftwareSolutionsMember" name="us-gaap:PurchaseObligationDueInFourthYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,962</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2047" contextRef="AsOf2025-03-31_cxdo_SoftwareSolutionsMember" name="us-gaap:PurchaseObligationDueInFifthYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,409</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2048" contextRef="AsOf2025-03-31_cxdo_SoftwareSolutionsMember" name="us-gaap:PurchaseObligationDueAfterFifthYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,263</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2049" contextRef="AsOf2025-03-31_cxdo_SoftwareSolutionsMember" name="us-gaap:PurchaseObligation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">27,266</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2027" contextRef="AsOf2025-03-31" name="us-gaap:PurchaseObligationDueInSecondYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">30,283</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2028" contextRef="AsOf2025-03-31" name="us-gaap:PurchaseObligationDueInThirdYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">23,814</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2030" contextRef="AsOf2025-03-31" name="us-gaap:PurchaseObligationDueInFourthYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">16,052</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2029" contextRef="AsOf2025-03-31" name="us-gaap:PurchaseObligationDueInFifthYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">8,104</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2031" contextRef="AsOf2025-03-31" name="us-gaap:PurchaseObligationDueAfterFifthYear" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,696</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_2032" contextRef="AsOf2025-03-31" name="us-gaap:PurchaseObligation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">81,949</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">All consideration from contracts with customers is included in the amounts presented above</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric></ix:continuation><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">17</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_760" contextRef="From2025-01-01to2025-03-31" name="us-gaap:EarningsPerShareTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>3. Earnings Per Common Share</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">Basic net income/(loss) per common share is computed by dividing the net income for the period by the weighted-average number of common shares outstanding during the period. Diluted net income per common share is computed giving effect to all dilutive common stock equivalents, consisting of common stock options. The following table sets forth the computation of basic and diluted net income per common share:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_822" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Net income/(loss) (in thousands) (A)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_156" contextRef="From2025-01-01to2025-03-31" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,171</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_155" contextRef="From2024-01-01to2024-03-31" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">434</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Weighted-average share reconciliation:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Weighted-average basic shares outstanding (B)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_167" contextRef="From2025-01-01to2025-03-31" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">28,024,280</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_166" contextRef="From2024-01-01to2024-03-31" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">26,314,903</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Dilutive effect of stock-based awards</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_290" contextRef="From2025-01-01to2025-03-31" name="cxdo:DilutiveEffectOfStockBasedAwards" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">3,068,495</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_289" contextRef="From2024-01-01to2024-03-31" name="cxdo:DilutiveEffectOfStockBasedAwards" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">3,827,197</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Diluted weighted-average outstanding shares of common stock (C)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_169" contextRef="From2025-01-01to2025-03-31" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">31,092,775</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_168" contextRef="From2024-01-01to2024-03-31" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">30,142,100</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Earnings per common share:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Basic (A/B)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_172" contextRef="From2025-01-01to2025-03-31" name="us-gaap:EarningsPerShareBasic" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.04</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_171" contextRef="From2024-01-01to2024-03-31" name="us-gaap:EarningsPerShareBasic" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.02</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Diluted (A/C)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_182" contextRef="From2025-01-01to2025-03-31" name="us-gaap:EarningsPerShareDiluted" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.04</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_181" contextRef="From2024-01-01to2024-03-31" name="us-gaap:EarningsPerShareDiluted" format="ixt:numdotdecimal" decimals="INF" unitRef="USDPShares">0.01</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">For the three months ended March 31, 2025 and 2024, the following potentially dilutive common stock, including awards granted under our equity incentive compensation plans, were excluded from the computation of diluted net income per share because including them would be anti-dilutive. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_823" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Stock options</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_192" contextRef="From2025-01-01to2025-03-31_us-gaap_StockOptionMember" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">1,303,571</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_191" contextRef="From2024-01-01to2024-03-31_us-gaap_StockOptionMember" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:numdotdecimal" decimals="0" unitRef="Shares">1,317,937</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_761" contextRef="From2025-01-01to2025-03-31" name="us-gaap:AllowanceForCreditLossesTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>4. Trade Receivables and Allowance for Credit Losses</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our trade receivables balance consists of traditional trade receivables. Trade receivables were as follows (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_827" contextRef="From2025-01-01to2025-03-31" name="cxdo:ScheduleOFtradeReceivablesTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Gross trade receivables</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_193" contextRef="AsOf2025-03-31" name="us-gaap:AccountsReceivableGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,225</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_194" contextRef="AsOf2024-12-31" name="us-gaap:AccountsReceivableGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,498</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_195" contextRef="AsOf2025-03-31" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">165</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_196" contextRef="AsOf2024-12-31" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">146</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_197" contextRef="AsOf2025-03-31" name="us-gaap:AccountsReceivableNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,060</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_198" contextRef="AsOf2024-12-31" name="us-gaap:AccountsReceivableNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,352</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Current trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_199" contextRef="AsOf2025-03-31" name="us-gaap:NontradeReceivablesCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,060</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_200" contextRef="AsOf2024-12-31" name="us-gaap:NontradeReceivablesCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,352</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Long-term trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_201" contextRef="AsOf2025-03-31" name="us-gaap:LongTermInvestmentsAndReceivablesNet" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_202" contextRef="AsOf2024-12-31" name="us-gaap:LongTermInvestmentsAndReceivablesNet" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_203" contextRef="AsOf2025-03-31" name="cxdo:TradeReceivablesNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,060</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_204" contextRef="AsOf2024-12-31" name="cxdo:TradeReceivablesNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,352</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">The allowance for credit losses was as follows (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">&#160;</p><ix:nonNumeric id="fid_828" contextRef="From2025-01-01to2025-03-31" name="cxdo:ScheduleOfAllowanceForCreditLossestableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_208" contextRef="AsOf2024-12-31" name="us-gaap:NetInvestmentInLeaseAllowanceForCreditLossCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">146</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Provision</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_214" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ProvisionForOtherCreditLosses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">48</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Write-offs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_218" contextRef="From2025-01-01to2025-03-31" name="cxdo:AllowanceForLoansAndLeaseLossesWriteOffs" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">31</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Recoveries and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_222" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ReinsuranceCostsAndRecoveriesNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_227" contextRef="AsOf2025-03-31" name="us-gaap:NetInvestmentInLeaseAllowanceForCreditLossCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">165</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The allowance for credit losses is determined based on an assessment of historical collection experience using the aging schedule method as well as consideration of current and future economic conditions. Based on that assessment, the allowance for credit losses as a percentage of gross accounts receivable increased to <ix:nonFraction id="fid_228" contextRef="AsOf2025-03-31" name="cxdo:AccountsPercentageOfAccountsReceivable" decimals="INF" unitRef="Pure" scale="-2">3.9</ix:nonFraction>% at March 31, 2025 from <ix:nonFraction id="fid_229" contextRef="AsOf2024-12-31" name="cxdo:AccountsPercentageOfAccountsReceivable" decimals="INF" unitRef="Pure" scale="-2">3.3</ix:nonFraction>% at December 31, 2024.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">18</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><ix:nonNumeric id="fid_762" contextRef="From2025-01-01to2025-03-31" name="cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock" escape="true" continuedAt="cont_01f67b"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>5. Equipment Financing Receivables and Allowance for Credit Losses</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our equipment financing receivables balance consists of sales-type leases arising from lease financing of cloud telecommunication equipment (IP or cloud telephone desktop devices) bundled and sold with our cloud telecommunications services. The majority of our leases that qualify as sales-type leases are non-cancelable and include cancellation penalties approximately equal to the full value of the lease receivables. Revenue from sales-type leases is recognized upon installation and the interest portion is deferred and recognized as earned. These receivables are typically collateralized by a security interest in the underlying equipment. Equipment financing receivables were as follows (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_829" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Gross equipment financing receivables</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1636" contextRef="AsOf2025-03-31" name="us-gaap:FinancingReceivableRevolving" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,291</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1637" contextRef="AsOf2024-12-31" name="us-gaap:FinancingReceivableRevolving" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,164</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: unearned income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1638" contextRef="AsOf2025-03-31" name="us-gaap:LimitedPartnersCumulativeNetIncome" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">1,504</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1639" contextRef="AsOf2024-12-31" name="us-gaap:LimitedPartnersCumulativeNetIncome" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">1,492</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1640" contextRef="AsOf2025-03-31" name="cxdo:LessAllowanceForCreditLosses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">100</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1641" contextRef="AsOf2024-12-31" name="cxdo:LessAllowanceForCreditLosses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">226</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Equipment financing receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1642" contextRef="AsOf2025-03-31" name="cxdo:FinancingReceivableAllowanceForCreditLossEquipment" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,687</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1643" contextRef="AsOf2024-12-31" name="cxdo:FinancingReceivableAllowanceForCreditLossEquipment" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,446</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Current equipment financing receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1644" contextRef="AsOf2025-03-31" name="us-gaap:ReceivablesNetCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,138</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1645" contextRef="AsOf2024-12-31" name="us-gaap:ReceivablesNetCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,049</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Long-term equipment financing&#160; receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1646" contextRef="AsOf2025-03-31" name="us-gaap:LongTermAccountsNotesAndLoansReceivableNetNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,549</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1647" contextRef="AsOf2024-12-31" name="us-gaap:LongTermAccountsNotesAndLoansReceivableNetNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,397</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Equipment financing receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1648" contextRef="AsOf2025-03-31" name="cxdo:LongTermInvestmentsAndReceivables" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,687</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1649" contextRef="AsOf2024-12-31" name="cxdo:LongTermInvestmentsAndReceivables" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,446</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; A summary of our gross equipment financing receivables&#8217; future contractual maturities, is as follows (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_830" contextRef="From2025-01-01to2025-03-31" name="us-gaap:SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Year ending December 31,</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2025 remaining</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1650" contextRef="AsOf2024-12-31" name="cxdo:GrossEquipmentFinancingReceivablesNexttwelvemonths" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,416</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1651" contextRef="AsOf2024-12-31" name="cxdo:GrossEquipmentFinancingReceivablesYeartwo" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,579</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2027</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1652" contextRef="AsOf2024-12-31" name="cxdo:GrossEquipmentFinancingReceivablesYearthree" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,222</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2028</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1653" contextRef="AsOf2024-12-31" name="cxdo:GrossEquipmentFinancingReceivablesYearFour" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">748</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2029</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1656" contextRef="AsOf2024-12-31" name="cxdo:GrossEquipmentFinancingReceivablesYearFive" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">326</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2030 and thereafter</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1654" contextRef="AsOf2024-12-31" name="cxdo:GrossEquipmentFinancingReceivablesAfteryearfive" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1655" contextRef="AsOf2024-12-31" name="cxdo:EquipmentFinancingReceivablesDue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,291</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><em>Allowance for Credit Losses</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">The allowance for credit losses was as follows (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><ix:nonNumeric id="fid_831" contextRef="From2025-01-01to2025-03-31" name="us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1657" contextRef="AsOf2024-12-31_cxdo_AllowanceForCreditLossesMember" name="cxdo:AllowanceforcreditlossesofContractAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">226</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Provision</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1658" contextRef="From2025-01-01to2025-03-31_cxdo_AllowanceForCreditLossesMember" name="us-gaap:ProvisionForOtherCreditLosses" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Write-offs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1659" contextRef="From2025-01-01to2025-03-31_cxdo_AllowanceForCreditLossesMember" name="us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">8</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Recoveries and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1660" contextRef="From2025-01-01to2025-03-31_cxdo_AllowanceForCreditLossesMember" name="us-gaap:FinancingReceivableAllowanceForCreditLossesRecovery" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">118</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1661" contextRef="AsOf2025-03-31_cxdo_AllowanceForCreditLossesMember" name="cxdo:AllowanceforcreditlossesofContractAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">100</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="font-size:10pt;font-family:times new roman;margin:0px"><em>Aging of Receivables</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">The aging of gross equipment financing receivables was as follows (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">&#160;</p><ix:nonNumeric id="fid_832" contextRef="From2025-01-01to2025-03-31" name="cxdo:ScheduleOfAgingOfReceivablesTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Past due amounts 0 - 90 days</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1662" contextRef="AsOf2025-03-31_us-gaap_FinancingReceivables60To89DaysPastDueMember" name="cxdo:AgingOfReceivablesAmountDues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,677</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1663" contextRef="AsOf2024-12-31_us-gaap_FinancingReceivables60To89DaysPastDueMember" name="cxdo:AgingOfReceivablesAmountDues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,444</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Past due amounts &gt; 90 days</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1664" contextRef="AsOf2025-03-31_us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember" name="cxdo:AgingOfReceivablesAmountDues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">10</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1665" contextRef="AsOf2024-12-31_us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember" name="cxdo:AgingOfReceivablesAmountDues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1667" contextRef="AsOf2025-03-31" name="cxdo:AgingOfReceivablesDues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,687</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1666" contextRef="AsOf2024-12-31" name="cxdo:AgingOfReceivablesDues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,446</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our equipment financing receivable portfolio is primarily in the United States. The allowance for credit losses is determined principally based on an assessment of origination year and past collection experience as well as consideration of current and future economic conditions and changes in our customer collection trends. Based on that assessment, the allowance for credit losses as a percentage of gross equipment financing receivables (net of unearned income) decreased to <ix:nonFraction id="fid_1685" contextRef="AsOf2025-03-31" name="srt:FinancingReceivableAllowanceForCreditLossToNonaccrualPercent" decimals="INF" unitRef="Pure" scale="-2">2.7</ix:nonFraction>% at March 31, 2025 from <ix:nonFraction id="fid_1684" contextRef="AsOf2024-12-31" name="srt:FinancingReceivableAllowanceForCreditLossToNonaccrualPercent" decimals="INF" unitRef="Pure" scale="-2">6.1</ix:nonFraction>% at December 31, 2024.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">19</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_01f67b"><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">The allowance for credit losses represents an estimate of the losses expected to be incurred from the Company's equipment financing receivable portfolio. The projected loss rates are primarily based upon historical loss experience adjusted for judgments about the probable effects of relevant observable data including current and future economic conditions as well as delinquency trends, resolution rates, and the aging of receivables. The allowance for credit losses for equipment finance receivables is inherently more difficult to estimate than the allowance for trade receivables because the underlying lease portfolio has an average maturity, at any time, of approximately three to five years and contains unbilled amounts. We consider all available information in our quarterly assessments of the adequacy of the allowance for credit losses. We believe our estimates, including any qualitative adjustments, are reasonable and have considered all reasonably available information about past events, current conditions, and reasonable and supportable forecasts of future events and economic conditions. The identification of account-specific exposure is not a significant factor in establishing the allowance for credit losses for equipment finance receivables. We continue to monitor developments in future economic conditions and trends, and as a result, our reserve may need to be updated in future periods.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">The table below shows gross equipment financing receivables and current period gross write offs by year of origination (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><ix:nonNumeric id="fid_833" contextRef="From2025-01-01to2025-03-31" name="cxdo:ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="26"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="2"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>December 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2021</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Prior</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Equipment Financing Receivables</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Equipment</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Financing</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Receivables</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">United States</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1670" contextRef="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyFiveMember" name="cxdo:TotalEquipmentFinancingReceivablesDue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">418</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1671" contextRef="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyFourMember" name="cxdo:TotalEquipmentFinancingReceivablesDue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,749</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1683" contextRef="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyThreeMember" name="cxdo:TotalEquipmentFinancingReceivablesDue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,071</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1668" contextRef="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyTwoMember" name="cxdo:TotalEquipmentFinancingReceivablesDue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">429</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1669" contextRef="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyOneMember" name="cxdo:TotalEquipmentFinancingReceivablesDue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">80</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1672" contextRef="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_PriorMember" name="cxdo:TotalEquipmentFinancingReceivablesDue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">40</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1682" contextRef="AsOf2025-03-31" name="cxdo:TotalEquipmentFinancingReceivablesDue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,787</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1673" contextRef="AsOf2024-12-31" name="cxdo:TotalEquipmentFinancingReceivablesDue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,672</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Current period gross write offs</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1677" contextRef="AsOf2025-03-31_cxdo_TwoThousendTwentyFiveMember" name="cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1678" contextRef="AsOf2025-03-31_cxdo_TwoThousendTwentyFourMember" name="cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1674" contextRef="AsOf2025-03-31_cxdo_TwoThousendTwentyThreeMember" name="cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1675" contextRef="AsOf2025-03-31_cxdo_TwoThousendTwentyTwoMember" name="cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1676" contextRef="AsOf2025-03-31_cxdo_TwoThousendTwentyOneMember" name="cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1679" contextRef="AsOf2025-03-31_cxdo_PriorMember" name="cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1681" contextRef="AsOf2025-03-31" name="cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">8</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1680" contextRef="AsOf2024-12-31" name="cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">36</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric></ix:continuation><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><ix:nonNumeric id="fid_763" contextRef="From2025-01-01to2025-03-31" name="cxdo:PrepaidExpensesDisclosureTextBlock" escape="true"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>6. Prepaid Expenses</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">Prepaid expenses consisted of the following (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_834" contextRef="From2025-01-01to2025-03-31" name="cxdo:ScheduleOfPrepaidExpensesTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid corporate insurance</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_376" contextRef="AsOf2025-03-31" name="us-gaap:PrepaidInsurance" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">32</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_390" contextRef="AsOf2024-12-31" name="us-gaap:PrepaidInsurance" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">88</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid software services and support</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_378" contextRef="AsOf2025-03-31" name="cxdo:PrepaidSoftwareServices" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">485</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_391" contextRef="AsOf2024-12-31" name="cxdo:PrepaidSoftwareServices" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">455</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid employee insurance premiums</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1602" contextRef="AsOf2025-03-31" name="us-gaap:PrepaidReinsurancePremiums" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">202</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1604" contextRef="AsOf2024-12-31" name="us-gaap:PrepaidReinsurancePremiums" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid Nasdaq listing fee</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1603" contextRef="AsOf2025-03-31" name="cxdo:PrepaidNasdaqListingFee" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">53</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1605" contextRef="AsOf2024-12-31" name="cxdo:PrepaidNasdaqListingFee" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">User group meeting fees</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_384" contextRef="AsOf2025-03-31" name="cxdo:PrepaidexpensesForUserGroupMeeting" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">103</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_392" contextRef="AsOf2024-12-31" name="cxdo:PrepaidexpensesForUserGroupMeeting" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">86</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid rent</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_382" contextRef="AsOf2025-03-31" name="us-gaap:AccruedRentCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">28</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_393" contextRef="AsOf2024-12-31" name="us-gaap:AccruedRentCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">103</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other prepaid expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_386" contextRef="AsOf2025-03-31" name="us-gaap:OtherPrepaidExpenseCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">90</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_396" contextRef="AsOf2024-12-31" name="us-gaap:OtherPrepaidExpenseCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">144</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total prepaid expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_388" contextRef="AsOf2025-03-31" name="us-gaap:PrepaidExpenseAndOtherAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">993</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_395" contextRef="AsOf2024-12-31" name="us-gaap:PrepaidExpenseAndOtherAssets" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">876</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">20</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_764" contextRef="From2025-01-01to2025-03-31" name="us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock" escape="true"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>7. Property and Equipment</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">Property and equipment consisted of the following (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_835" contextRef="From2025-01-01to2025-03-31" name="us-gaap:PropertyPlantAndEquipmentTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer and office equipment</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_405" contextRef="AsOf2025-03-31_us-gaap_OfficeEquipmentMember" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,142</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_406" contextRef="AsOf2024-12-31_us-gaap_OfficeEquipmentMember" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,142</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer software</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_407" contextRef="AsOf2025-03-31_cxdo_ComputerSoftwareIntangibleAssetsMember" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">589</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_408" contextRef="AsOf2024-12-31_cxdo_ComputerSoftwareIntangibleAssetsMember" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">589</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Internal-use software</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_409" contextRef="AsOf2025-03-31_cxdo_InternalUseComputerSoftwareMember" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">14</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_410" contextRef="AsOf2024-12-31_cxdo_InternalUseComputerSoftwareMember" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">14</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Vehicles</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_413" contextRef="AsOf2025-03-31_us-gaap_VehiclesMember" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">143</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_414" contextRef="AsOf2024-12-31_us-gaap_VehiclesMember" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">143</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Leasehold improvements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_415" contextRef="AsOf2025-03-31_us-gaap_LeaseholdImprovementsMember" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">34</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_416" contextRef="AsOf2024-12-31_us-gaap_LeaseholdImprovementsMember" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">34</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: accumulated depreciation</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_397" contextRef="AsOf2025-03-31" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,593</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_398" contextRef="AsOf2024-12-31" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,528</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total property and equipment, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_399" contextRef="AsOf2025-03-31" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">329</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_400" contextRef="AsOf2024-12-31" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">394</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Depreciation expense is included in general and administrative expenses and totaled $<ix:nonFraction id="fid_421" contextRef="From2025-01-01to2025-03-31" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">65</ix:nonFraction> and $<ix:nonFraction id="fid_422" contextRef="From2024-01-01to2024-03-31" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">80</ix:nonFraction> for the three months ended March 31, 2025 and 2024, respectively.</p></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_765" contextRef="From2025-01-01to2025-03-31" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock" escape="true" continuedAt="cont_7525cd"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>8. Intangible Assets and Goodwill</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">Acquired intangible assets subject to amortization consist of the following (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><ix:nonNumeric id="fid_836" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="10"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="10"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Gross Carrying Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Accumulated Amortization</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Net Carrying Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Gross Carrying Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Accumulated Amortization</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Net Carrying Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer relationships</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_947" contextRef="AsOf2025-03-31_us-gaap_CustomerRelationshipsMember" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">26,073</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_955" contextRef="AsOf2025-03-31_us-gaap_CustomerRelationshipsMember" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">7,904</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_963" contextRef="AsOf2025-03-31_us-gaap_CustomerRelationshipsMember" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">18,169</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">26,073</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_954" contextRef="AsOf2024-12-31_us-gaap_CustomerRelationshipsMember" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">7,403</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_962" contextRef="AsOf2024-12-31_us-gaap_CustomerRelationshipsMember" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">18,670</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Developed technologies</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_949" contextRef="AsOf2025-03-31_cxdo_DevelopedTechnologiesMember" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,900</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_957" contextRef="AsOf2025-03-31_cxdo_DevelopedTechnologiesMember" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">3,263</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_965" contextRef="AsOf2025-03-31_cxdo_DevelopedTechnologiesMember" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,637</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_948" contextRef="AsOf2024-12-31_cxdo_DevelopedTechnologiesMember" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,900</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_956" contextRef="AsOf2024-12-31_cxdo_DevelopedTechnologiesMember" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">3,081</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_964" contextRef="AsOf2024-12-31_cxdo_DevelopedTechnologiesMember" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,819</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Trademark and trade names</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_951" contextRef="AsOf2025-03-31_cxdo_TrademarkAndTradeNamesMember" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">400</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_959" contextRef="AsOf2025-03-31_cxdo_TrademarkAndTradeNamesMember" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">384</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_967" contextRef="AsOf2025-03-31_cxdo_TrademarkAndTradeNamesMember" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">16</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_950" contextRef="AsOf2024-12-31_cxdo_TrademarkAndTradeNamesMember" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">400</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_958" contextRef="AsOf2024-12-31_cxdo_TrademarkAndTradeNamesMember" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">361</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_966" contextRef="AsOf2024-12-31_cxdo_TrademarkAndTradeNamesMember" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">39</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total acquired intangible assets</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_953" contextRef="AsOf2025-03-31_cxdo_TotalacquiredintangibleassetsMember" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">31,373</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_961" contextRef="AsOf2025-03-31_cxdo_TotalacquiredintangibleassetsMember" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">11,551</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_969" contextRef="AsOf2025-03-31_cxdo_TotalacquiredintangibleassetsMember" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">19,822</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_952" contextRef="AsOf2024-12-31_cxdo_TotalacquiredintangibleassetsMember" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">31,373</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_960" contextRef="AsOf2024-12-31_cxdo_TotalacquiredintangibleassetsMember" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">10,845</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_968" contextRef="AsOf2024-12-31_cxdo_TotalacquiredintangibleassetsMember" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">20,528</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">As of March 31, 2025, the weighted average remaining useful life for customer relationships was <ix:nonNumeric id="fid_988" contextRef="From2025-01-01to2025-03-31" name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" format="ixt-sec:duryear">12.1</ix:nonNumeric> years, developed technologies was <ix:nonNumeric id="fid_986" contextRef="From2025-01-01to2025-03-31" name="cxdo:DevelopedTechnologies" format="ixt-sec:duryear">2.2</ix:nonNumeric> years, and trademarks and trade names was <ix:nonNumeric id="fid_987" contextRef="From2025-01-01to2025-03-31" name="cxdo:TrademarksAndTradeNames" format="ixt-sec:duryear">0.2</ix:nonNumeric> years.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Amortization expense for customer relationships intangible assets is included in sales and marketing expenses and totaled $<ix:nonFraction id="fid_984" contextRef="From2025-01-01to2025-03-31_us-gaap_SellingAndMarketingExpenseMember" name="cxdo:AmortizationOfIntangibleAssetsCustomerRelationships" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">501</ix:nonFraction> and $<ix:nonFraction id="fid_985" contextRef="From2024-01-01to2024-03-31_us-gaap_SellingAndMarketingExpenseMember" name="cxdo:AmortizationOfIntangibleAssetsCustomerRelationships" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">527</ix:nonFraction> for the three months ended March 31, 2025 and 2024, respectively. Amortization expense for developed technologies intangible assets is included in cost of software solutions revenue and totaled $<ix:nonFraction id="fid_982" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsRevenueMember" name="cxdo:AmortizationOfIntangibleAssetsDevelopedTechnology" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">182</ix:nonFraction> and $<ix:nonFraction id="fid_983" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsRevenueMember" name="cxdo:AmortizationOfIntangibleAssetsDevelopedTechnology" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">203</ix:nonFraction> for the three months ended March 31, 2025 and 2024, respectively. Amortization expense for trademark and trade name intangible assets is included in general and administrative expenses and totaled $<ix:nonFraction id="fid_990" contextRef="From2025-01-01to2025-03-31_us-gaap_GeneralAndAdministrativeExpenseMember" name="cxdo:AmortizationOfIntangibleAssetsTrademarksAndTradeNames" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">23</ix:nonFraction> and $<ix:nonFraction id="fid_989" contextRef="From2024-01-01to2024-03-31_us-gaap_GeneralAndAdministrativeExpenseMember" name="cxdo:AmortizationOfIntangibleAssetsTrademarksAndTradeNames" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">30</ix:nonFraction> for the three months ended March 31, 2025 and 2024, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">As of March 31, 2025, annual amortization of definite lived intangible assets, based on existing intangible assets and current useful lives, is estimated to be the following (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_837" contextRef="From2025-01-01to2025-03-31" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Year ending December 31,</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2025 remaining</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_970" contextRef="AsOf2025-03-31" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,064</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_971" contextRef="AsOf2025-03-31" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,457</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2027</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_972" contextRef="AsOf2025-03-31" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,202</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2028</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_973" contextRef="AsOf2025-03-31" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,637</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2029</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1606" contextRef="AsOf2025-03-31" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,557</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2030 and thereafter</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_974" contextRef="AsOf2025-03-31" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,905</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_975" contextRef="AsOf2025-03-31" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">19,822</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">21</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_7525cd"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The following table provides a summary of changes in the carrying amounts of goodwill (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_838" contextRef="From2025-01-01to2025-03-31" name="cxdo:ScheduleOfGoodwillCarryingAmountTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Goodwill</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at January 1, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_976" contextRef="AsOf2023-12-31" name="cxdo:GoodwillBeginningBalance" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,454</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Additions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_981" contextRef="From2024-01-01to2024-12-31" name="cxdo:GoodwillAdditions" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_978" contextRef="AsOf2024-12-31" name="cxdo:GoodwillEndingBalance" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,454</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Additions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_980" contextRef="From2025-01-01to2025-03-31" name="cxdo:GoodwillAdditions" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_977" contextRef="AsOf2025-03-31" name="cxdo:GoodwillEndingBalance" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,454</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric></ix:continuation><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><ix:nonNumeric id="fid_766" contextRef="From2025-01-01to2025-03-31" name="us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" escape="true"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>9. Accrued Expenses</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">Accrued expenses consisted of the following (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><ix:nonNumeric id="fid_839" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Accrued wages and benefits</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1687" contextRef="AsOf2025-03-31" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,045</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1686" contextRef="AsOf2024-12-31" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,828</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Accrued accounts payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1689" contextRef="AsOf2025-03-31" name="cxdo:AccruedAccountsPayable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,915</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1688" contextRef="AsOf2024-12-31" name="cxdo:AccruedAccountsPayable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,579</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Accrued sales and telecommunications taxes</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1691" contextRef="AsOf2025-03-31" name="us-gaap:SalesAndExciseTaxPayableCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,839</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1690" contextRef="AsOf2024-12-31" name="us-gaap:SalesAndExciseTaxPayableCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,837</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Product warranty liability</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1693" contextRef="AsOf2025-03-31" name="cxdo:ProductWarrantyAccrual1" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">31</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1692" contextRef="AsOf2024-12-31" name="cxdo:ProductWarrantyAccrual1" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">32</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cloud computing arrangements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1701" contextRef="AsOf2025-03-31" name="cxdo:CloudComputingArrangements" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">153</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1700" contextRef="AsOf2024-12-31" name="cxdo:CloudComputingArrangements" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">279</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Credit cards</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1699" contextRef="AsOf2025-03-31" name="cxdo:CreditCards" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">104</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1698" contextRef="AsOf2024-12-31" name="cxdo:CreditCards" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">117</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1695" contextRef="AsOf2025-03-31" name="us-gaap:OtherAccruedLiabilitiesCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">352</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1694" contextRef="AsOf2024-12-31" name="us-gaap:OtherAccruedLiabilitiesCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">320</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total accrued expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1697" contextRef="AsOf2025-03-31" name="us-gaap:OtherAccruedLiabilitiesCurrentAndNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,439</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1696" contextRef="AsOf2024-12-31" name="us-gaap:OtherAccruedLiabilitiesCurrentAndNoncurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,992</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The changes in aggregate product warranty liabilities for the three months ended March 31, 2025 and the year ended December 31, 2024 were as follows (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><ix:nonNumeric id="fid_840" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Warranty</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Liabilities</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at January 1, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1702" contextRef="AsOf2023-12-31" name="us-gaap:ProductWarrantyAccrual" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">25</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Accrual for warranties</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1703" contextRef="AsOf2024-12-31" name="us-gaap:ProductWarrantyAccrual" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">32</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Adjustments related to pre-existing warranties</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1709" contextRef="From2024-01-01to2024-12-31" name="us-gaap:AdjustmentOfWarrantsGrantedForServices" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">4</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Warranty settlements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1707" contextRef="From2024-01-01to2024-12-31" name="us-gaap:ProductWarrantyAccrualPayments" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">21</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1705" contextRef="From2024-01-01to2024-12-31" name="cxdo:ProductWarrantiesAccrualPeriodIncreaseDecrease" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">32</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Accrual for warranties</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1704" contextRef="From2025-01-01to2025-03-31" name="cxdo:ProductWarrantiesAccrualPeriodIncreaseDecrease" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Warranty settlements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1706" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ProductWarrantyAccrualPayments" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">7</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1708" contextRef="AsOf2025-03-31" name="us-gaap:ProductWarrantyAccrual" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">31</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">Product warranty expense is included in cost of product revenue expense and totaled $<ix:nonFraction id="fid_1712" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ProductWarrantyExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6</ix:nonFraction> and $<ix:nonFraction id="fid_1711" contextRef="From2024-01-01to2024-03-31" name="us-gaap:ProductWarrantyExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">7</ix:nonFraction> for the three months ended March 31, 2025 and 2024, respectively. </p></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_767" contextRef="From2025-01-01to2025-03-31" name="us-gaap:DebtDisclosureTextBlock" escape="true" continuedAt="cont_03e3f2"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>10. </strong><strong>Notes Payable</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Notes payable consists of short and long-term financing arrangements:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_841" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ScheduleOfDebtTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Related party note payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1719" contextRef="AsOf2025-03-31" name="cxdo:NotesPayableRelatedPartyClassifiedCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">384</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1715" contextRef="AsOf2024-12-31" name="us-gaap:NotesPayableCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">478</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1720" contextRef="AsOf2025-03-31" name="us-gaap:OtherNotesPayable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">91</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1722" contextRef="AsOf2024-12-31" name="us-gaap:OtherNotesPayable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">114</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1714" contextRef="AsOf2025-03-31" name="us-gaap:NotesPayable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">475</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1713" contextRef="AsOf2024-12-31" name="us-gaap:NotesPayable" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">592</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: current notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1716" contextRef="AsOf2025-03-31" name="us-gaap:NotesPayableCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">475</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1721" contextRef="AsOf2024-12-31" name="cxdo:NotesPayableRelatedPartyClassifiedCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">478</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Notes payable, net of current portion</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1718" contextRef="AsOf2025-03-31" name="us-gaap:SecuredLongTermDebt" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1717" contextRef="AsOf2024-12-31" name="us-gaap:SecuredLongTermDebt" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">114</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">22</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_03e3f2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">On February 27, 2023, we entered into a promissory note with CrossFirst Bank in the amount of $<ix:nonFraction id="fid_1742" contextRef="AsOf2025-03-31_cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember" name="cxdo:PromissoryNote" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">278</ix:nonFraction>. The promissory note has a term of three (<ix:nonNumeric id="fid_1730" contextRef="From2022-10-30to2022-11-01_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember" name="cxdo:AgreementTerm" format="ixt-sec:duryear">3</ix:nonNumeric>) years with monthly payments of Eight Thousand Five Hundred Forty-Three ($<ix:nonFraction id="fid_1734" contextRef="From2025-01-01to2025-03-31_cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember" name="us-gaap:PaymentsForRestructuring" format="ixt:numdotdecimal" decimals="-1" unitRef="USD" scale="1">8,543</ix:nonFraction>), including interest of <ix:nonFraction id="fid_1735" contextRef="From2025-01-01to2025-03-31_cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember" name="us-gaap:DebtInstrumentInterestRateDuringPeriod" decimals="INF" unitRef="Pure" scale="-2">6.58</ix:nonFraction>%, beginning on March 27, 2023. Additionally, the promissory note is subject to certain financial covenants. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">On November 1, 2022, as part of the acquisition of Allegiant Networks, we entered into a promissory note with the seller in the amount of $<ix:nonFraction id="fid_1729" contextRef="AsOf2022-11-01_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember" name="cxdo:PromissoryNote" format="ixt:numdotdecimal" decimals="-5" unitRef="USD" scale="6">1.1</ix:nonFraction> million. The loan agreement has a term of three (<ix:nonNumeric id="fid_1736" contextRef="From2025-01-01to2025-03-31_cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember" name="cxdo:AgreementTerm" format="ixt-sec:duryear">3</ix:nonNumeric>) years with quarterly payments of Ninety-Eight Thousand Three Hundred Eighty-One ($<ix:nonFraction id="fid_1731" contextRef="From2022-10-30to2022-11-01_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember" name="us-gaap:PaymentsForRestructuring" format="ixt:numdotdecimal" decimals="-1" unitRef="USD" scale="1">98,381</ix:nonFraction>), including interest at <ix:nonFraction id="fid_1732" contextRef="From2022-10-30to2022-11-01_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember" name="us-gaap:DebtInstrumentInterestRateDuringPeriod" decimals="INF" unitRef="Pure" scale="-2">4.00</ix:nonFraction>%, beginning on April 1, 2023. As of March 31, 2025 and December 31, 2024, the outstanding balance of the related party note payable was $<ix:nonFraction id="fid_1737" contextRef="AsOf2025-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember" name="cxdo:NotesPayableRelatedPartyClassifiedCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">384</ix:nonFraction> and $<ix:nonFraction id="fid_1733" contextRef="AsOf2024-12-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember" name="cxdo:NotesPayableRelatedPartyClassifiedCurrent" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">478</ix:nonFraction>, respectively. During the three months ended March 31, 2025 and 2024, the Company paid principal of $<ix:nonFraction id="fid_1738" contextRef="From2025-01-01to2025-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember" name="us-gaap:DebtInstrumentPeriodicPaymentPrincipal" format="ixt:numdotdecimal" decimals="-1" unitRef="USD" scale="1">94</ix:nonFraction> and $<ix:nonFraction id="fid_1739" contextRef="From2024-01-01to2024-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember" name="us-gaap:DebtInstrumentPeriodicPaymentPrincipal" format="ixt:numdotdecimal" decimals="-1" unitRef="USD" scale="1">90</ix:nonFraction>, respectively and interest of $<ix:nonFraction id="fid_1741" contextRef="From2025-01-01to2025-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember" name="us-gaap:InterestPaid" format="ixt:numdotdecimal" decimals="-1" unitRef="USD" scale="1">4</ix:nonFraction> and $<ix:nonFraction id="fid_1740" contextRef="From2024-01-01to2024-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember" name="us-gaap:InterestPaid" format="ixt:numdotdecimal" decimals="-1" unitRef="USD" scale="1">8</ix:nonFraction>, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">As of March 31, 2025, future principal payments are scheduled as follows (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_842" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"><strong>Year ending December 31,</strong></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2025 remaining</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1723" contextRef="AsOf2025-03-31" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">361</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1724" contextRef="AsOf2025-03-31" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">114</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2027</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1725" contextRef="AsOf2025-03-31" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2028</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1726" contextRef="AsOf2025-03-31" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2029</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1727" contextRef="AsOf2025-03-31" name="us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1728" contextRef="AsOf2025-03-31" name="us-gaap:LongTermDebt" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">475</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric></ix:continuation><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_768" contextRef="From2025-01-01to2025-03-31" name="cxdo:LineOfCreditTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>11. Line of Credit</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">The Company maintains a line of credit with a maximum principal amount of $<ix:nonFraction id="fid_1050" contextRef="From2025-01-01to2025-03-31" name="us-gaap:LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">700</ix:nonFraction>, payable upon demand. The line of credit expires on <ix:nonNumeric id="fid_1051" contextRef="From2025-01-01to2025-03-31" name="us-gaap:LineOfCreditFacilityExpirationDate1" format="ixt:datemonthdayyearen">February 27, 2026</ix:nonNumeric>. The line of credit bears interest at <ix:nonFraction id="fid_1052" contextRef="From2025-01-01to2025-03-31" name="us-gaap:LineOfCreditFacilityInterestRateDuringPeriod" decimals="INF" unitRef="Pure" scale="-2">0.50</ix:nonFraction>% over the Wall Street Journal Prime Rate. As of March 31, 2025, there was an outstanding balance of $<ix:nonFraction id="fid_1049" contextRef="AsOf2025-03-31" name="us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">0</ix:nonFraction> and $<ix:nonFraction id="fid_1053" contextRef="AsOf2025-03-31" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">700</ix:nonFraction> remained available for borrowing. The line of credit is collateralized by all company assets. Additionally, the line of credit is subject to certain financial covenants.</p></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_769" contextRef="From2025-01-01to2025-03-31" name="us-gaap:FairValueDisclosuresTextBlock" escape="true"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>12. Fair Value Measurements</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We have financial instruments as of March 31, 2025 and December 31, 2024 for which the fair value is summarized below (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_843" contextRef="From2025-01-01to2025-03-31" name="us-gaap:FairValueByBalanceSheetGroupingTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Carrying</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Estimated Fair</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Carrying</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Estimated Fair</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Assets:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1062" contextRef="AsOf2025-03-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember" name="us-gaap:AccountsReceivableFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,060</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1066" contextRef="AsOf2025-03-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember" name="us-gaap:AccountsReceivableFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,060</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1054" contextRef="AsOf2024-12-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember" name="us-gaap:AccountsReceivableFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,352</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1055" contextRef="AsOf2024-12-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember" name="us-gaap:AccountsReceivableFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,352</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Equipment financing receivables </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1063" contextRef="AsOf2025-03-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember" name="cxdo:EquipmentFinancingReceivableFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,687</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1067" contextRef="AsOf2025-03-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember" name="cxdo:EquipmentFinancingReceivableFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,687</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1056" contextRef="AsOf2024-12-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember" name="cxdo:EquipmentFinancingReceivableFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,446</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1057" contextRef="AsOf2024-12-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember" name="cxdo:EquipmentFinancingReceivableFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,446</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Liabilities:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Finance lease obligations</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1064" contextRef="AsOf2025-03-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember" name="cxdo:FinanceLeasesFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1068" contextRef="AsOf2025-03-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember" name="cxdo:FinanceLeasesFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1058" contextRef="AsOf2024-12-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember" name="cxdo:FinanceLeasesFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">23</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1059" contextRef="AsOf2024-12-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember" name="cxdo:FinanceLeasesFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">23</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1065" contextRef="AsOf2025-03-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember" name="us-gaap:NotesPayableFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">475</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1069" contextRef="AsOf2025-03-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember" name="us-gaap:NotesPayableFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">472</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1060" contextRef="AsOf2024-12-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember" name="us-gaap:NotesPayableFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">592</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1061" contextRef="AsOf2024-12-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember" name="us-gaap:NotesPayableFairValueDisclosure" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">587</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 29.5pt; text-align:justify;">We have no liabilities for which fair value is recognized in the balance sheet on a recurring basis as of March 31, 2025 and December 31, 2024.</p></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_770" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncomeTaxDisclosureTextBlock" escape="true" continuedAt="cont_8f39a7"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>13. Income Taxes</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our effective tax rate for the three months ended March 31, 2025 and 2024 was <ix:nonFraction id="fid_1748" contextRef="From2025-01-01to2025-03-31" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" decimals="INF" unitRef="Pure" scale="-2">3.6</ix:nonFraction>% and <ix:nonFraction id="fid_1743" contextRef="From2024-01-01to2024-03-31" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" decimals="INF" unitRef="Pure" scale="-2">5.8</ix:nonFraction>%, respectively, which resulted in an income tax benefit/(provision) of $(<ix:nonFraction id="fid_1747" contextRef="From2025-01-01to2025-03-31" name="cxdo:IncomeTaxBenefitProvisions" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">44</ix:nonFraction>) and $(<ix:nonFraction id="fid_1746" contextRef="From2024-01-01to2024-03-31" name="cxdo:IncomeTaxBenefitProvisions" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">27</ix:nonFraction>), respectively.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">23</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_8f39a7"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">As of each reporting date, management considers new evidence, both positive and negative, that could affect its view of the future realization of deferred tax assets. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income in the periods in which those temporary differences become deductible. We reduce the carrying amounts of deferred tax assets by a valuation allowance if, based on the evidence available, it is more-likely-than-not that such assets will not be realized. In making the assessment under the more-likely-than-not standard, appropriate consideration must be given to all positive and negative evidence related to the realization of the deferred tax assets. This assessment considers, among other matters, the nature, frequency and severity of current and cumulative losses, forecasts of future profitability, the duration of statutory carry-forward periods by jurisdiction, unitary versus stand-alone state tax filings, our experience with loss carryforwards expiring unutilized, and all tax planning alternatives that may be available. As of December 31, 2024, management reviewed the weight of all the positive and negative evidence available. Management reviewed negative evidence such as three years of cumulative pretax loss in the U.S. federal tax jurisdiction, and positive evidence such as projections of future pretax income and the duration of statutory carry-forward periods. As of December 31, 2024 the Company has a cumulative pretax loss for the three year lookback excluding the gain on the sale of property and equipment, which is considered significant objectively verifiable negative evidence. Management also evaluated projections of future pretax income and the duration of statutory carry-forward periods to determine if the NOL carryforwards could be utilized in whole or in part before they expire unutilized. Forecasts and projections of future income are inherently subjective and therefore generally are given less weight, based on the extent to which the assumptions can be objectively verified based on historical experience. Although historical trends utilized in our projections are objectively verifiable we assigned less weight to this positive evidence given the subjective nature of assumptions in projections. Management reviewed negative evidence related to experience of credits and loss carryforwards expiring unutilized, and determined that although negative evidence exists, it was not significant evidence, as the current loss carryforwards do not begin to expire until 2032 and therefore risk is minimal. After reviewing the weight of the positive and negative evidence, management determined that the positive evidence was not sufficient enough to overcome the negative evidence of cumulative pretax losses for the three-year lookback to conclude that it is more likely than not that deferred tax assets of $<ix:nonFraction id="fid_1750" contextRef="AsOf2025-03-31" name="cxdo:DeferredTaxesRealizableAmount" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,417</ix:nonFraction> are realizable. Therefore, a valuation allowance of $<ix:nonFraction id="fid_1749" contextRef="AsOf2025-03-31" name="cxdo:DeferredTaxAssetValuationAllowance" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,417</ix:nonFraction> was recorded against our gross deferred tax asset balance as of March 31, 2025 and December 31, 2024.</p></ix:continuation><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_771" contextRef="From2025-01-01to2025-03-31" name="us-gaap:LesseeOperatingLeasesTextBlock" escape="true" continuedAt="cont_2da78f"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>14. Leases</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Lessee Accounting</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We determine if an agreement is a lease at inception. We lease office space, data center colocation space, other assets, and office equipment under operating leases. We lease data center equipment, including maintenance contracts and vehicles under finance leases.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Operating leases are recorded as right-of-use (&#8220;ROU&#8221;) assets and lease liabilities on the balance sheet, excluding leases that are less than 12 months. ROU assets represent our right to use the leased asset for the lease term and lease liabilities represent our obligation to make lease payments. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. As most of our leases do not provide an implicit rate, we use our estimated incremental borrowing rate at the commencement date to determine the present value of lease payments. The operating lease ROU assets also include any lease payments made and exclude lease incentives. The Company&#8217;s lease agreements do not contain any variable lease payments, material residual value guarantees or any restrictive covenants. Our lease terms may include options, at our sole discretion, to extend or terminate the lease.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We leased office space in Tempe, Arizona under a non-cancelable <ix:nonNumeric id="fid_1807" contextRef="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember" name="cxdo:DescriptionOfleaseExpiryDate">operating lease agreement that expired in January 2025</ix:nonNumeric>. On August 9, 2023, in connection with the sale of our corporate office building and land, we entered into a lease agreement to leaseback the property. The operating lease agreement has an initial term of eighteen full calendar months, with an option to terminate the lease on the last day of the twelfth full calendar month with a sixty-day notice. The operating lease agreement includes fixed fees for property tax, insurance, and common area maintenance (CAM). We account for the lease components and non-lease components such as fixed fee property tax and insurance charges as a single lease component. The CAM charges are considered a separate non-lease component of the lease agreement and are excluded from the measurement of the lease liability. We utilized our incremental borrowing rate of <ix:nonFraction id="fid_1813" contextRef="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember" name="cxdo:IncrementalBorrowingRate" decimals="INF" unitRef="Pure" scale="-2">6.58</ix:nonFraction>% to determine the present value of lease payments to determine our lease liability. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $<ix:nonFraction id="fid_1797" contextRef="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember" name="us-gaap:OperatingLeaseExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">14</ix:nonFraction> and $<ix:nonFraction id="fid_1798" contextRef="From2024-01-01to2024-03-31_cxdo_TempeArizoneMember" name="us-gaap:OperatingLeaseExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">78</ix:nonFraction>, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We currently are in a non-cancelable commercial sublease operating agreement to sublease office space in Tempe Arizona, which is the headquarters for the Company. This sublease commenced on October 1, 2024, and will continue for thirty-seven (37) months through October 31, 2027. The base monthly rent is as follows: <ix:nonNumeric id="fid_1816" contextRef="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember_cxdo_OctoberTwoThousandTwentyFourMember" name="cxdo:InterestExpenseOnMonthlyRentDepositLiabilitiesDescription">October 1, 2024 &#8211; September 30, 2025, $28; October 1, 2025 &#8211; September 30, 2026, $29, and October 1, 2026 &#8211; October 31, 2027, $30</ix:nonNumeric>. The Company is entitled to three months of rent abatement, which will be January 2025, January 2026, and January 2027. If <ix:nonNumeric id="fid_1817" contextRef="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember_cxdo_OctoberTwoThousandTwentyFourMember" name="cxdo:OperatingCostsAndExpencesDescription">Operating Costs exceed $20 in a calendar year, then the Company shall be responsible for fifty (50%) percent of the amount exceeding $20</ix:nonNumeric>. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $<ix:nonFraction id="fid_1818" contextRef="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember_cxdo_OctoberTwoThousandTwentyFourMember" name="us-gaap:OperatingLeaseExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">80</ix:nonFraction> and $<ix:nonFraction id="fid_1819" contextRef="From2024-01-01to2024-03-31_cxdo_TempeArizoneMember_cxdo_OctoberTwoThousandTwentyFourMember" name="us-gaap:OperatingLeaseExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">0</ix:nonFraction>, respectively</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We leased office space in Reston, Virginia under a non-cancelable <ix:nonNumeric id="fid_1808" contextRef="From2025-01-01to2025-03-31_cxdo_RestonVirginiaMember" name="cxdo:DescriptionOfleaseExpiryDate">operating lease agreement that expired in October 2024</ix:nonNumeric>. The operating lease contained customary escalation clauses. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $<ix:nonFraction id="fid_1799" contextRef="From2025-01-01to2025-03-31_cxdo_RestonVirginiaMember" name="us-gaap:OperatingLeaseExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">0</ix:nonFraction> and $<ix:nonFraction id="fid_1800" contextRef="From2024-01-01to2024-03-31_cxdo_RestonVirginiaMember" name="us-gaap:OperatingLeaseExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13</ix:nonFraction>, respectively.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">24</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_2da78f"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We currently lease office space in San Diego, California under a non-cancelable <ix:nonNumeric id="fid_1809" contextRef="From2025-01-01to2025-03-31_cxdo_SanDiegoCaliforniaMember" name="cxdo:DescriptionOfleaseExpiryDate">operating lease agreement that expires in 2025</ix:nonNumeric>. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $<ix:nonFraction id="fid_1801" contextRef="From2025-01-01to2025-03-31_cxdo_SanDiegoCaliforniaMember" name="us-gaap:OperatingLeaseExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">22</ix:nonFraction> and $<ix:nonFraction id="fid_1802" contextRef="From2024-01-01to2024-03-31_cxdo_SanDiegoCaliforniaMember" name="us-gaap:OperatingLeaseExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">22</ix:nonFraction>, respectively.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We currently lease office space in Overland Park, Kansas under a non-cancelable <ix:nonNumeric id="fid_1810" contextRef="From2025-01-01to2025-03-31_cxdo_OverlandParkKansasMember" name="cxdo:DescriptionOfleaseExpiryDate">operating lease agreement that expires in 2027</ix:nonNumeric>. The operating lease contains customary escalation clauses. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $<ix:nonFraction id="fid_1803" contextRef="From2025-01-01to2025-03-31_cxdo_OverlandParkKansasMember" name="us-gaap:OperatingLeaseExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">41</ix:nonFraction> and $<ix:nonFraction id="fid_1804" contextRef="From2024-01-01to2024-03-31_cxdo_OverlandParkKansasMember" name="us-gaap:OperatingLeaseExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">51</ix:nonFraction>, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We currently lease other assets under multiple operating leases. <ix:nonNumeric id="fid_1811" contextRef="From2025-01-01to2025-03-31_cxdo_OtherOperatingLeasesMember" name="cxdo:DescriptionOfleaseExpiryDate">The leases expire on various dates through 2027 and the interest rates range from 2.81% to 15.74%</ix:nonNumeric>. The expense is included in cost of product expenses and totaled approximately $<ix:nonFraction id="fid_1814" contextRef="From2025-01-01to2025-03-31_cxdo_OtherOperatingLeasesMember" name="us-gaap:CostsAndExpenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">18</ix:nonFraction> and $<ix:nonFraction id="fid_1815" contextRef="From2024-01-01to2024-03-31_cxdo_OtherOperatingLeasesMember" name="us-gaap:CostsAndExpenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">21</ix:nonFraction> for the three months ended March 31, 2025 and 2024, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We currently lease data center colocation space in Grand Rapids, Michigan, Las Vegas, Nevada, Dallas, Texas, Lenexa, Kansas, and Phoenix, Arizona under non-cancelable <ix:nonNumeric id="fid_1812" contextRef="From2025-01-01to2025-03-31_cxdo_MichiganLasVegasMember" name="cxdo:DescriptionOfleaseExpiryDate">operating lease agreements that expire on various dates through 2029</ix:nonNumeric>. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $<ix:nonFraction id="fid_1806" contextRef="From2024-01-01to2024-03-31_cxdo_MichiganLasVegasMember" name="us-gaap:OperatingLeaseExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">114</ix:nonFraction> and $<ix:nonFraction id="fid_1805" contextRef="From2025-01-01to2025-03-31_cxdo_MichiganLasVegasMember" name="us-gaap:OperatingLeaseExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">144</ix:nonFraction>, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We have lease agreements with lease and non-lease components, and we account for the lease and non-lease components as a single lease component. Our lease agreements do not contain any material residual value guarantees or material restrictive covenants.&#160; The Company leases equipment and support under finance lease agreements which extends through 2026. The Company also leases one vehicle under a financing agreement. The outstanding balance for finance leases was $<ix:nonFraction id="fid_1785" contextRef="AsOf2025-03-31" name="us-gaap:FinanceLeaseLiability" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4</ix:nonFraction> and $<ix:nonFraction id="fid_1784" contextRef="AsOf2024-12-31" name="us-gaap:FinanceLeaseLiability" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">23</ix:nonFraction> as of March 31, 2025 and December 31, 2024, respectively. The Company recorded assets classified as property and equipment under finance lease obligations of $<ix:nonFraction id="fid_1787" contextRef="AsOf2025-03-31" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">486</ix:nonFraction> and $<ix:nonFraction id="fid_1786" contextRef="AsOf2024-12-31" name="us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">486</ix:nonFraction> as of March 31, 2025 and December 31, 2024, respectively. Related accumulated depreciation totaled $<ix:nonFraction id="fid_1789" contextRef="AsOf2025-03-31" name="us-gaap:PropertyPlantAndEquipmentOwnedAccumulatedDepreciation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">419</ix:nonFraction> and $<ix:nonFraction id="fid_1788" contextRef="AsOf2024-12-31" name="us-gaap:PropertyPlantAndEquipmentOwnedAccumulatedDepreciation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">403</ix:nonFraction> as of March 31, 2025 and December 31, 2024, respectively. The $<ix:nonFraction id="fid_1790" contextRef="From2025-01-01to2025-03-31" name="us-gaap:OtherExpenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">40</ix:nonFraction> in support contracts were classified as a prepaid expense and are being amortized over the service period of three years. One support contract expired in January 2021 and the other expired in June 2024. &#160;Amortization expense is included in general and administrative expenses and totaled $<ix:nonFraction id="fid_1791" contextRef="From2025-01-01to2025-03-31" name="cxdo:AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">23</ix:nonFraction> and $<ix:nonFraction id="fid_1792" contextRef="From2024-01-01to2024-03-31" name="cxdo:AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1</ix:nonFraction> for the three months ended March 31, 2025 and 2024, respectively. The interest rates on finance lease obligations range from <ix:nonFraction id="fid_1794" contextRef="From2025-01-01to2025-03-31_cxdo_BottomMember" name="cxdo:InterestRateFinanceLeases" decimals="INF" unitRef="Pure" scale="-2">1.37</ix:nonFraction>% and <ix:nonFraction id="fid_1793" contextRef="From2025-01-01to2025-03-31_srt_ScenarioPreviouslyReportedMember" name="cxdo:InterestRateFinanceLeases" decimals="INF" unitRef="Pure" scale="-2">15.74</ix:nonFraction>% and interest expense was $<ix:nonFraction id="fid_1795" contextRef="From2025-01-01to2025-03-31" name="us-gaap:InterestExpenseDebt" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">0</ix:nonFraction> and $<ix:nonFraction id="fid_1796" contextRef="From2024-01-01to2024-03-31" name="us-gaap:InterestExpenseDebt" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1</ix:nonFraction> for the three months ended March 31, 2025 and 2024, respectively. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The maturity of operating leases and finance lease liabilities as of March 31, 2025 are as follows:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_854" contextRef="From2025-01-01to2025-03-31" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Year ending December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Operating</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Leases</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Finance</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Leases</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2025 remaining</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1752" contextRef="AsOf2025-03-31" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">479</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1761" contextRef="AsOf2025-03-31" name="us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1753" contextRef="AsOf2025-03-31" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">555</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1762" contextRef="AsOf2025-03-31" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2027</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1754" contextRef="AsOf2025-03-31" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">458</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1763" contextRef="AsOf2025-03-31" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2028</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1755" contextRef="AsOf2025-03-31" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">62</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1764" contextRef="AsOf2025-03-31" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2029</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1756" contextRef="AsOf2025-03-31" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">41</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1765" contextRef="AsOf2025-03-31" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total minimum lease payments</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1757" contextRef="AsOf2025-03-31" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,595</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1766" contextRef="AsOf2025-03-31" name="us-gaap:FinanceLeaseLiabilityPaymentsDue" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Less: amount representing interest</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1758" contextRef="AsOf2025-03-31" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">163</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1767" contextRef="AsOf2025-03-31" name="us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Present value of minimum lease payments</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1759" contextRef="AsOf2025-03-31" name="us-gaap:OperatingLeaseLiability" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,432</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1768" contextRef="AsOf2025-03-31" name="us-gaap:FinanceLeaseLiability" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><ix:nonNumeric id="fid_855" contextRef="From2025-01-01to2025-03-31" name="cxdo:ScheduleOfLeaseTermAndDiscountTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Lease term and discount rate</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Weighted-average remaining lease term (years)</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Operating leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonNumeric id="fid_1769" contextRef="From2025-01-01to2025-03-31" name="cxdo:OperatingLeaseWeightedAverageRemainingLeaseTerm" format="ixt-sec:duryear">2.9</ix:nonNumeric></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Finance leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonNumeric id="fid_1770" contextRef="From2025-01-01to2025-03-31" name="cxdo:FinanceLeaseWeightedAverageRemainingLeaseTerm" format="ixt-sec:duryear">1.7</ix:nonNumeric></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Weighted-average discount rate</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Operating leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1771" contextRef="AsOf2025-03-31" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" decimals="INF" unitRef="Pure" scale="-2">7.6</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Finance leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1772" contextRef="AsOf2025-03-31" name="us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent" decimals="INF" unitRef="Pure" scale="-2">15.7</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><ix:nonNumeric id="fid_856" contextRef="From2025-01-01to2025-03-31" name="cxdo:ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31, 2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31, 2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td colspan="8" style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Cash paid for amounts included in the measurement of lease liabilities:</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Operating cash flows from operating leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1773" contextRef="From2025-01-01to2025-03-31" name="cxdo:OperatingCashFlowsFromOperatingLeases" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">128</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1774" contextRef="From2024-01-01to2024-03-31" name="cxdo:OperatingCashFlowsFromOperatingLeases" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">213</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Operating cash flows from finance leases</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1775" contextRef="From2025-01-01to2025-03-31" name="cxdo:OperatingCashFlowsFromFinanceLeases" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1776" contextRef="From2024-01-01to2024-03-31" name="cxdo:OperatingCashFlowsFromFinanceLeases" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Financing cash flows from finance leases</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1777" contextRef="From2025-01-01to2025-03-31" name="cxdo:FinancingCashFlowsFromFinanceLeases" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">19</ix:nonFraction></td><td style="vertical-align:bottom;white-space: nowrap;">)</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1778" contextRef="From2024-01-01to2024-03-31" name="cxdo:FinancingCashFlowsFromFinanceLeases" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">18</ix:nonFraction></td><td style="vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Non-cash investing and financing activities:</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Additions to ROU assets obtained from:</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">New operating lease liabilities</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1780" contextRef="From2025-01-01to2025-03-31" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1781" contextRef="From2025-01-01to2025-03-31" name="us-gaap:RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">New finance lease liabilities</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1782" contextRef="From2024-01-01to2024-03-31" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1783" contextRef="From2024-01-01to2024-03-31" name="us-gaap:RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric></ix:continuation><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">25</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:nonNumeric id="fid_772" contextRef="From2025-01-01to2025-03-31" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" escape="true"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>15. Commitments and Contingencies</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Annual Employee Bonus Plan Accrual</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We utilize incentive bonuses to reward performance achievements, which provides potential annual cash bonus awards to Company employees, including Named Executive Officers (&#8220;NEOs&#8221;). Under the Bonus Plan, <ix:nonNumeric id="fid_1338" contextRef="From2025-01-01to2025-03-31_cxdo_DecemberThirtyOneTwoThousandTwentyFourMember_cxdo_BonusPlanMember_cxdo_BoardOfDirectorsMember" name="cxdo:BonusDescription">the Compensation Committee of the Board of Directors of the Company (the &#8220;Board&#8221;) has established a bonus pool of $990, for our NEOs and executive management team for the year ending December 31, 2025. The Board established a bonus pool of $350 for our non-executive employees, for the year ending December 31, 2025</ix:nonNumeric>. Participants are eligible to receive cash bonus awards based upon achieving annual performance targets established by the Board for the year ending December 31, 2025, relating to annual revenue and adjusted EBITDA performance targets. Awards will be paid on a tiered scale based upon actual performance as a percentage of the performance targets with a floor and cap. Payments for individual performance targets met or exceeded are payable, whether or not all performance targets are met, consistent with the weighted amounts for each performance target within the bonus pools. <ix:nonNumeric id="fid_1339" contextRef="From2025-01-01to2025-03-31_cxdo_DecemberThirtyOneTwoThousandTwentyFourMember_cxdo_BonusPlanMember_cxdo_BoardOfDirectorsMember" name="cxdo:BonusAwardDescription">Bonus awards for NEOs and executive management will be weighted 50% on annual revenue and 50% on Adjusted EBITDA. No bonus will be awarded for any performance target for which actual performance is less than 90% of target. At 90% or greater actual performance relative to the target, 50% of the weighted bonus amount for the performance target is payable. From 90% to 100% actual performance relative to the target, the remaining 50% of the weighted bonus amount is awarded pro rata with the percentage of actual performance exceeding 90% of target (i.e., each 1% excess over 90% of performance target equals 5% of the weighted bonus amount payable). If actual performance reaches 110% of performance target or greater for any individual performance target, then an additional 10% of the amount apportioned to that performance target will be payable as an additional bonus</ix:nonNumeric>. Historically, for the years ended December 31, 2024 and 2023, the employee bonus plan performance targets were achieved at 100% or greater. Based on our financial performance as of March 31, 2025 and forecasted annualized results for the year ended December 31, 2025, management determined that the achievement of 100% of the annual revenue and Adjusted EBITDA performance targets is probable. Based on management&#8217;s estimate, the Company recorded an accrual of $<ix:nonFraction id="fid_1341" contextRef="From2025-01-01to2025-03-31_cxdo_DecemberThirtyOneTwoThousandTwentyFourMember_cxdo_BonusPlanMember_cxdo_BoardOfDirectorsMember" name="us-gaap:AccretionExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">335</ix:nonFraction> for the employee bonus plan, which is included in accrued expense in the accompanying condensed consolidated balance sheet at March 31, 2025.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Purchase Obligations</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">In February 2024, the Company entered into a $<ix:nonFraction id="fid_1340" contextRef="From2024-02-01to2024-02-29_cxdo_OracleMemberMember" name="cxdo:ServiceContractAmount" format="ixt:numdotdecimal" decimals="-5" unitRef="USD" scale="6">5.4</ix:nonFraction> million noncancellable five-year hosting service contract with Oracle, a third-party network service provider. The contract includes minimum quarterly commitments and the requirements to maintain the service level for the entire contract period. <ix:nonNumeric id="fid_1343" contextRef="From2024-02-01to2024-02-29_cxdo_OracleMemberMember" name="cxdo:DescriptionRelatedToNoncancellableServiceContractFutureAmount">Under this agreement, $340 remains due during fiscal year 2025, $1.1 million will be due during fiscal 2026, $1.4 million will be due during fiscal 2027, $1.7 million will be due during fiscal 2028, and $456 will be due during fiscal 2029</ix:nonNumeric>. During the three months ended March 31, 2025 and 2024, the Company has expensed $<ix:nonFraction id="fid_1337" contextRef="AsOf2025-03-31_cxdo_OracleMemberMember" name="us-gaap:PurchaseObligation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">0</ix:nonFraction> and $<ix:nonFraction id="fid_2342" contextRef="AsOf2024-03-31_cxdo_OracleMemberMember" name="us-gaap:PurchaseObligation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">0</ix:nonFraction>, respectively of the purchase obligation and $<ix:nonFraction id="fid_1342" contextRef="From2025-01-01to2025-03-31_cxdo_OracleMemberMember" name="us-gaap:AccretionExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">81</ix:nonFraction> and $<ix:nonFraction id="fid_1608" contextRef="From2024-01-01to2024-03-31_cxdo_OracleMemberMember" name="us-gaap:AccretionExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">234</ix:nonFraction> is included in accrued expenses at March 31, 2025 and December 31, 2024, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Legal Proceedings</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">In the ordinary course of business, the Company may be involved in a variety of claims, lawsuits, investigations, and other proceedings, including patent infringement claims, employment litigation, regulatory compliance matters, and contractual disputes, that can arise in the normal course of the Company's operations. The Company recognizes a provision when management believes information available prior to the issuance of the financial statements indicates it is probable a loss has been incurred as of the date of the financial statements and the amount of loss can be reasonably estimated. The Company adjusts the amount of the provision to reflect the impact of negotiations, settlements, rulings, advice of legal counsel, and other information and events pertaining to a particular case. As of March 31, 2025, the Company does not have a recorded liability for estimated losses. Legal costs are expensed as incurred.</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><ix:nonNumeric id="fid_777" contextRef="From2025-01-01to2025-03-31" name="us-gaap:SegmentReportingDisclosureTextBlock" escape="true" continuedAt="cont_1131ab"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>16. Segment Reporting</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The Company has two reportable operating segments, which consist of cloud telecommunications services and software solutions and uses segment income/(loss) from operations to assess performance against forecasted results and allocate resources to its segments. Segment income/(loss) from operations is determined on the same basis as consolidated income/(loss) from operations presented in the Company&#8217;s consolidated statements of operations. The cloud telecommunications services segment generates revenue from selling cloud telecommunication services, products, and other internet services. The software solutions segment generates revenue from selling perpetual software licenses and software subscriptions, subscription maintenance and support, and professional services.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our chief operating decision maker (CODM) is our Chief Executive Officer, Jeffrey G. Korn. The CODM uses segment income/(loss) from operations before income taxes for purposes of allocating resources and evaluating financial performance predominantly in the annual budget and forecasting process. The CODM considers budget-to-actual variances on a quarterly basis using the segment income/(loss) before taxes measure when making decisions about allocating capital and personnel to the segments. The CODM does not review assets in evaluating the results of the operating segments, and therefore, such information is not presented. Segment revenue, significant segment expenses, income/(loss) from operations, other income/(expense) and income/(loss) before income tax for the three months ended March 31, 2025 and 2024 are as follows (in thousands):</p></ix:nonNumeric><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">26</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_1131ab" continuedAt="cont_326a34"><ix:nonNumeric id="fid_857" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" escape="true" continuedAt="cont_42726f"><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Three Months Ended March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cloud</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Software</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Telecommunications</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Solutions</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Consolidated</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Service revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1824" contextRef="From2025-01-01to2025-03-31_us-gaap_ServiceMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">8,182</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1823" contextRef="From2025-01-01to2025-03-31_us-gaap_ServiceMember_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:Revenues" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1822" contextRef="From2025-01-01to2025-03-31_us-gaap_ServiceMember_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">8,182</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software solutions revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1825" contextRef="From2025-01-01to2025-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:Revenues" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1826" contextRef="From2025-01-01to2025-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,868</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1827" contextRef="From2025-01-01to2025-03-31_us-gaap_SoftwareDevelopmentMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,868</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Product revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1828" contextRef="From2025-01-01to2025-03-31_us-gaap_ProductMember_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,007</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1829" contextRef="From2025-01-01to2025-03-31_us-gaap_ProductMember_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:Revenues" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1830" contextRef="From2025-01-01to2025-03-31_us-gaap_ProductMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,007</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in">Consolidated revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1831" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,189</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1832" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,868</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1820" contextRef="From2025-01-01to2025-03-31" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">16,057</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: significant and other segment expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Employee expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1845" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:EmployeeBenefitsAndShareBasedCompensation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,926</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1846" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:EmployeeBenefitsAndShareBasedCompensation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">3,245</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1911" contextRef="From2025-01-01to2025-03-31" name="us-gaap:EmployeeBenefitsAndShareBasedCompensation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">7,171</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Commissions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1849" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:NoninterestExpenseCommissionExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,342</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1850" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:NoninterestExpenseCommissionExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">372</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1909" contextRef="From2025-01-01to2025-03-31" name="us-gaap:NoninterestExpenseCommissionExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,714</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Contractor expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1853" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:ProfessionalAndContractServicesExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">444</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1854" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:ProfessionalAndContractServicesExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">385</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1907" contextRef="From2025-01-01to2025-03-31" name="us-gaap:ProfessionalAndContractServicesExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">829</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Depreciation and amortization</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1857" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:OtherDepreciationAndAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">305</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1858" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:OtherDepreciationAndAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">466</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1905" contextRef="From2025-01-01to2025-03-31" name="us-gaap:OtherDepreciationAndAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">771</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other segment items(1)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1861" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:SegmentReportingOtherItemAmount" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,991</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1862" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:SegmentReportingOtherItemAmount" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,431</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1903" contextRef="From2025-01-01to2025-03-31" name="us-gaap:SegmentReportingOtherItemAmount" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,422</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in">Total operating expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1867" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:OperatingExpenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,008</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1868" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:OperatingExpenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,899</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1865" contextRef="From2025-01-01to2025-03-31" name="us-gaap:OperatingExpenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">14,907</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Segment income/(loss) from operations</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1873" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:OperatingIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">181</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1874" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:OperatingIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">969</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1871" contextRef="From2025-01-01to2025-03-31" name="us-gaap:OperatingIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,150</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: other segment income/(expense)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Interest income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1879" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:InterestIncomeOther" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">84</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1880" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:InterestIncomeOther" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1877" contextRef="From2025-01-01to2025-03-31" name="us-gaap:InterestIncomeOther" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">84</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Interest expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1883" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:InterestIncomeExpenseNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">9</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1884" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:InterestIncomeExpenseNet" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1901" contextRef="From2025-01-01to2025-03-31" name="us-gaap:InterestIncomeExpenseNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">9</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other income/(expense)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1887" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:OtherOperatingIncomeExpenseNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1888" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:OtherOperatingIncomeExpenseNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">16</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1913" contextRef="From2025-01-01to2025-03-31" name="us-gaap:OtherOperatingIncomeExpenseNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">10</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income/(loss) before income tax</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1893" contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">262</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1894" contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">953</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1891" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,215</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income tax benefit/(provision)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1897" contextRef="From2025-01-01to2025-03-31" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">44</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1899" contextRef="From2025-01-01to2025-03-31" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,171</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric><p style="font-size:10pt;font-family:times new roman;margin:0px">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">(1)</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;Other segment items primarily includes third-party telecommunication charges, cost of product revenue, software costs, data center costs, and other overhead expenses.</p></td></tr></tbody></table></ix:continuation><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">27</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><ix:continuation id="cont_326a34"><ix:continuation id="cont_42726f"><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Three Months Ended March 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cloud</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Software</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Telecommunications</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Solutions</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Consolidated</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Service revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1833" contextRef="From2024-01-01to2024-03-31_us-gaap_ServiceMember_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">7,845</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1834" contextRef="From2024-01-01to2024-03-31_us-gaap_ServiceMember_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:Revenues" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1835" contextRef="From2024-01-01to2024-03-31_us-gaap_ServiceMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">7,845</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software solutions revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1836" contextRef="From2024-01-01to2024-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:Revenues" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1837" contextRef="From2024-01-01to2024-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,146</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1838" contextRef="From2024-01-01to2024-03-31_us-gaap_SoftwareDevelopmentMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,146</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Product revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1839" contextRef="From2024-01-01to2024-03-31_us-gaap_ProductMember_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,295</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1840" contextRef="From2024-01-01to2024-03-31_us-gaap_ProductMember_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:Revenues" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1841" contextRef="From2024-01-01to2024-03-31_us-gaap_ProductMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,295</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in">Consolidated revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1842" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,140</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1843" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5,146</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1821" contextRef="From2024-01-01to2024-03-31" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">14,286</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: significant and other segment expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Employee expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1847" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:EmployeeBenefitsAndShareBasedCompensation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,149</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1848" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:EmployeeBenefitsAndShareBasedCompensation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,488</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1912" contextRef="From2024-01-01to2024-03-31" name="us-gaap:EmployeeBenefitsAndShareBasedCompensation" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">6,637</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Commissions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1851" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:NoninterestExpenseCommissionExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,181</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1852" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:NoninterestExpenseCommissionExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">196</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1910" contextRef="From2024-01-01to2024-03-31" name="us-gaap:NoninterestExpenseCommissionExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,377</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Contractor expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1855" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:ProfessionalAndContractServicesExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">419</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1856" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:ProfessionalAndContractServicesExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">398</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1908" contextRef="From2024-01-01to2024-03-31" name="us-gaap:ProfessionalAndContractServicesExpense" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">817</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Depreciation and amortization</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1859" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:OtherDepreciationAndAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">355</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1860" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:OtherDepreciationAndAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">483</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1906" contextRef="From2024-01-01to2024-03-31" name="us-gaap:OtherDepreciationAndAmortization" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">838</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other segment items(1)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1863" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:SegmentReportingOtherItemAmount" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2,958</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1864" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:SegmentReportingOtherItemAmount" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">1,175</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1904" contextRef="From2024-01-01to2024-03-31" name="us-gaap:SegmentReportingOtherItemAmount" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,133</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in">Total operating expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1869" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:OperatingExpenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">9,062</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1870" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:OperatingExpenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">4,740</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1866" contextRef="From2024-01-01to2024-03-31" name="us-gaap:OperatingExpenses" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13,803</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Segment income/(loss) from operations</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1875" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:OperatingIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">78</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1876" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:OperatingIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">406</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1872" contextRef="From2024-01-01to2024-03-31" name="us-gaap:OperatingIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">483</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: other segment income/(expense)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Interest income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1881" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:InterestIncomeOther" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1882" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:InterestIncomeOther" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1878" contextRef="From2024-01-01to2024-03-31" name="us-gaap:InterestIncomeOther" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">5</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Interest expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1885" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:InterestIncomeExpenseNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">13</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1886" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:InterestIncomeExpenseNet" format="ixt:zerodash" decimals="-3" unitRef="USD" scale="3">-</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1902" contextRef="From2024-01-01to2024-03-31" name="us-gaap:InterestIncomeExpenseNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">13</ix:nonFraction></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other income/(expense)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1889" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:OtherOperatingIncomeExpenseNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">2</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1890" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:OtherOperatingIncomeExpenseNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">17</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1914" contextRef="From2024-01-01to2024-03-31" name="us-gaap:OtherOperatingIncomeExpenseNet" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" sign="-" scale="3">15</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income/(loss) before income tax</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1895" contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">72</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1896" contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">389</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1892" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">461</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income tax benefit/(provision)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(<ix:nonFraction id="fid_1898" contextRef="From2024-01-01to2024-03-31" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">27</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1900" contextRef="From2024-01-01to2024-03-31" name="us-gaap:NetIncomeLoss" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">434</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:continuation><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">(1)</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;Other segment items primarily includes third-party telecommunication charges, cost of product revenue, software costs, data center costs, and other overhead expenses.</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">The Company operates in two geographic areas, the United States and international. Revenue by geography is based on the location of the customer from which the revenue is earned. Revenue by geographic location is as follows (in thousands): </p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">&#160;</p><ix:nonNumeric id="fid_858" contextRef="From2025-01-01to2025-03-31" name="us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock" escape="true"><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">United States</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1917" contextRef="From2025-01-01to2025-03-31_country_US" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">15,353</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1918" contextRef="From2024-01-01to2024-03-31_country_US" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">13,431</ix:nonFraction></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">International</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1919" contextRef="From2025-01-01to2025-03-31_cxdo_InternationalMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">704</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1920" contextRef="From2024-01-01to2024-03-31_cxdo_InternationalMember" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">855</ix:nonFraction></td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1915" contextRef="From2025-01-01to2025-03-31" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">16,057</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"><ix:nonFraction id="fid_1916" contextRef="From2024-01-01to2024-03-31" name="us-gaap:Revenues" format="ixt:numdotdecimal" decimals="-3" unitRef="USD" scale="3">14,286</ix:nonFraction></td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table></ix:nonNumeric></ix:continuation><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">28</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0in"><strong><span class="atag" style="display: inline" id="i2">Item 2. Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</span></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>This section and other parts of this Form 10-Q contain forward-looking statements that involve risks and uncertainties. Forward-looking statements can be identified by words such as &#8220;anticipates,&#8221; &#8220;expects,&#8221; &#8220;believes,&#8221; &#8220;plans,&#8221; &#8220;predicts,&#8221; and similar terms. Forward-looking statements are not guarantees of future performance and our Company&#8217;s actual results may differ significantly from the results discussed in the forward-looking statements. Factors that might cause such differences include, but are not limited to, those discussed in Part II, Item 1A, &#8220;Risk Factors,&#8221; which are incorporated herein by reference. The following discussion should be read in conjunction with our Annual Report on Form 10-K for the year ended December 31, 2024 (the &#8220;2024 Form 10-K&#8221;) filed with the SEC and the Condensed Consolidated Financial Statements and notes thereto included in the 2025 Form 10-Qs and elsewhere in this Form 10-Q. We assume no obligation to revise or update any forward-looking statements for any reason, except as required by law.</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>OVERVIEW</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Crexendo, Inc. is an award-winning software technology company that is a premier provider of cloud communication platform software and unified communications as a service (UCaaS) offering, including voice, video, contact center, and managed IT services tailored to businesses of all sizes. Our cloud communications software solutions currently support over six million end users globally, through an extensive network of over 235 cloud communication platform software subscribers and our direct retail offering. Our products and services can be categorized in the following offerings:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><em>Cloud Telecommunications Services</em> &#8211; Our cloud telecommunications services transmit calls using IP or cloud technology, which converts voice signals into digital data packets for transmission over the Internet or cloud. Each of our calling plans provides a number of basic features typically offered by traditional telephone service providers, plus a wide range of enhanced features that we believe offer an attractive value proposition to our customers. This platform enables a user, via a single &#8220;identity&#8221; or telephone number, to access and utilize services and features regardless of how the user is connected to the Internet or cloud, whether it&#8217;s from a desktop device or an application on a mobile device or computer.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We generate recurring revenue from our cloud telecommunications services, broadband Internet services, managed IT services, software license sales, and infrastructure as a service. Our cloud telecommunications contracts typically have a thirty-six to sixty-month term. We may also charge activation and flash fees and the Company generally allocates a portion of the activation fees to the desktop devices, which is recognized at the time of the installation or customer acceptance, and a portion to the service, which is recognized over the contract term using the straight-line method. We also charge other various contracted and non-contracted fees.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We generate product revenue, equipment financing revenue, and device as a service revenue from the sale and lease of our cloud telecommunications equipment. Revenues from the sale of equipment, including those from sales-type leases, are recognized at the time of sale or at the inception of the lease, as appropriate.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><em>Software Solutions</em> &#8211; Our software solutions segment derives revenues from three primary sources: software licenses, software maintenance support and professional services. Software and services may be sold separately or in bundled packages. Generally, contracts with customers contain multiple performance obligations, consisting of software and services. For bundled packages, the Company accounts for individual products and services separately if they are distinct &#8211; i.e. if a product or service is separately identifiable from other items in the bundled package and if a customer can benefit from it on its own or with other resources that are readily available to the customer. The consideration is allocated between separate products and services in a bundle based on their relative stand-alone selling prices. The stand-alone selling prices are determined based on the prices at which the Company separately sells the software licenses and professional services. For items that are not sold separately (e.g. additional features) the Company estimates stand-alone selling prices using the adjusted market assessment approach. When we provide a free trial period, we do not begin to recognize recurring revenue until the trial period has ended and the customer has been billed for the services.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We generate software license revenue from the sale of perpetual software licenses, term-based software licenses that expire, and Software-as-a-Service ("SaaS") based software which are referred to as subscription arrangements. The Company does not recognize software revenue related to the renewal of subscription software licenses earlier than the beginning of the subscription period. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We generate subscription and maintenance support revenue from customer support and other supportive services. The Company offers warranties on its products. The warranty period for our licensed software is generally 90 days. Certain of the Company's warranties are considered to be assurance-type in nature and do not cover anything beyond ensuring that the product is functioning as intended. Based on the guidance in ASC 606, assurance-type warranties do not represent separate performance obligations. The Company also sells separately-priced maintenance service contracts, which qualify as service-type warranties and represent separate performance obligations. The Company does not typically allow and has no history of accepting material product returns.&#160; Customer support includes software updates on a when-and-if-available basis, telephone support, integrated web-based support and bug fixes or patches. Subscription and maintenance support revenue is recognized ratably over the term of the customer support agreement, which is typically one to three years. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">29</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We generate professional services and other revenue from consulting, technical support, resident engineer services, design services and installation services. Revenue for professional services and other is recognized when the performance obligation is complete and the customer has accepted the performance obligation.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>OUR SERVICES AND PRODUCTS</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our solution was recently recognized as the fastest growing UCaaS platform in the United States. By providing a variety of comprehensive and scalable solutions, we are able to cater to businesses of all sizes on a monthly subscription basis without the need for expensive capital investments, regardless of where their business is in its lifecycle. Our products and services can be categorized in the following offerings:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Cloud Telecommunications Services</strong> &#8211; Our cloud telecommunications service offering includes hardware, software, and unified IP or cloud technology over any high-speed Internet connection. These services are rendered through a variety of devices and communication solutions for businesses using user interfaces such as a Crexendo branded and third party desktop phones and/or mobile and desktop applications. Some examples of mobile devices are Android cell phones, iPhones, iPads or Android tablets. These services enable our customers to seamlessly communicate with others through phone calls that originate/terminate on our network or PSTN networks. Our cloud telecommunications services are powered by our proprietary implementation of standards based Web and VoIP cloud technologies. Our services use our highly scalable complex infrastructure that we build and manage based on industry standard best practices to achieve greater efficiencies, better quality of service (QoS) and customer satisfaction. Our infrastructure comprises of compute, storage, network technologies, 3<sup style="vertical-align:super">rd</sup> party products and vendor relationships. We also develop end user portals for account management, license management, billing and customer support and adopt other cloud technologies through our partnerships. </p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Crexendo&#8217;s cloud telecommunication service offers a wide variety of essential and advanced features for businesses of all sizes.&#160; Many of these features included in the service offering are:</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:8%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Business Productivity Features such as dial-by extension and name, transfer, conference, call recording, Unlimited calling to anywhere in the US and Canada, International calling, Toll free (Inbound and Outbound).</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Individual Productivity Features such as Caller ID, Call Waiting, Last Call Return, Call Recording, Music/Message-On-Hold, Voicemail, Unified Messaging, Hot-Desking.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Group Productivity Features such as Call Park, Call Pickup, Interactive Voice Response (IVR), Individual and Universal Paging, Corporate Directory, Multi-Party Conferencing, Group Mailboxes, Web and mobile devices based collaboration applications.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Call Center Features such as Automated Call Distribution (ACD), Call Monitor, Whisper and Barge, Automatic Call Recording, One way call recording, Analytics.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Advanced Unified Communication Features such as Find-Me-Follow-Me, Sequential Ring and Simultaneous Ring, Voicemail transcription.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Mobile Features such as extension dialing, transfer and conference and seamless hand-off from WiFi to/from 3G, 4G, 5G, and LTE, as well as other data services. These features are also available on CrexMo, VIP Mobile, and Snap Mobile which are intelligent mobile application for iPhones and Android smartphones, as well as iPads and Android tablets.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Traditional PBX Features such as Busy Lamp Fields, System Hold. 16-48 Port density Analog Device Gateways.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Expanded Desktop Device Selection such as Entry Level Phone, Executive Desktop, DECT Phone for roaming users.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Advanced Faxing solution such as Cloud Fax (cFax) allowing customers to send and receive Faxes from their Email Clients, Mobile Phones and Desktops without having to use a Fax Machine simply by attaching a file.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Web based online portal to administer, manage and provision the system.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Asynchronous communication tools like SMS/MMS, chat and document sharing to keep in pace with emerging communication trends.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Video collaboration tools for video conferencing and meeting collaboration.</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Many of these services are included in our basic offering to our customers for a monthly recurring fee and do not require a capital expense. Some of the advanced features such as Automatic Call Recording and Call Center Features require additional monthly fees. Crexendo continues to invest and develop its technology and CPaaS offerings to make them more competitive and profitable.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">30</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Software Solutions</strong> &#8211; Our software solutions offering provides a comprehensive suite of unified communications (UC), video conferencing, collaboration &amp; contact center solutions. Our platform enables service providers to customize packages with unprecedented levels of flexibility, profitability, and ease of use. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our software solutions offering are as follows:</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:8%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>SNAPsolution&#174;</em> - a comprehensive, IP-based platform that provides a broad suite of UC services including hosted Private Branch Exchange (PBX), auto-attendant, call center, conferencing, and mobility. The platform includes a broad range of feature-sets, custom-built to provide unprecedented levels of flexibility, making the solution competitive with the market&#8217;s leading players. SNAPsolution includes a full suite of Voice over Internet Protocol (VoIP)/UC features with one low cost universal license, as opposed to pricing each feature individually. The Company licenses its platform based on concurrent sessions, not per seat/per feature. This allows service providers to oversubscribe their networks, driving down the cost per seat as volume increases. As the service provider increases their customer base, they only have to ensure they have sufficient concurrent call licenses to support users across the network.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>SNAPaccel &#8211;</em> a<em> </em>Software-as-a-Service ("SaaS") based software license referred to as subscription arrangements.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Subscription Maintenance and Support -</em><strong> </strong>The Company also sells separately-priced maintenance service contracts, which qualify as service-type warranties and represent separate performance obligations and customer support. Customer support includes software updates on a when-and-if-available basis, telephone support, integrated web-based support and bug fixes or patches.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Professional Services and Other - </em>The Company's professional services include consulting, technical support, resident engineer services, design services and installation services.</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; TEXT-INDENT: 0in; text-align:justify;"><strong>RESULTS OF OPERATIONS</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The following discussion of financial condition and results of operations should be read in conjunction with our condensed consolidated financial statements and notes thereto and other financial information included elsewhere in this Form 10-Q.<strong> </strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>Results of Consolidated Operations</strong> <strong>(in thousands, except for per share amounts):</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Service revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">8,182</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,845</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software solutions revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,868</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,146</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Product revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,007</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,295</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Total revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">16,057</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14,286</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income/(loss) before income tax</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,215</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">461</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income tax benefit/(provision)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(44</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(27</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,171</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">434</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Basic earnings per share</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.04</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.02</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Diluted earnings per share</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.04</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.01</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">31</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Three months ended March 31, 2025 compared to three months ended March 31, 2024</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><em>Total Revenue</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Total revenue consists of service revenue, software solutions revenue and product revenue. The following table reflects our total revenue for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Total revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">16,057</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14,286</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,771</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">12</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The increase in total revenue is due to an increase in software solutions revenue of $1,722 and an increase in service revenue of $337, offset by a decrease in product revenue of $288.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Income/(loss) Before Income Tax</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The following table reflects our income/(loss) before income tax for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Income/(loss) before income tax</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,215</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">461</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">754</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">164</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The increase in income before income taxes is primarily related to an increase in revenue of $1,771 and an increase in other income of $87, offset by an increase in operating expenses of $1,104. The increase in revenue is related to organic growth from existing customers and new customers. The increase in operating expenses is primarily related to an increase in salaries, benefits, bonuses, and share-based compensation of $532, an increase in commission expenses of $337, an increase in third-party telecommunications charges of $135, and an increase in other operating expense of $100. The increase in other income is primarily related to an increase in interest income of $83 and a decrease in interest expense of $4.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Income Tax Benefit/(Provision)</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 24.5pt; text-align:justify;">The following table reflects our income tax benefit/(provision) for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 24.5pt; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Income tax benfit/(provision)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(44</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(27</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(17</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(63</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The increase in income tax provision is due to minimum state tax increases as a result of increased revenue.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>Use of Non-GAAP Financial Measures</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">To evaluate our business, we consider and use non-generally accepted accounting principles (&#8220;Non-GAAP&#8221;) net income and Adjusted EBITDA as a supplemental measure of operating performance. These measures include the same adjustments that management takes into account when it reviews and assesses operating performance on a period-to-period basis. We consider Non-GAAP net income to be an important indicator of overall business performance because it allows us to evaluate results without the effects of share-based compensation, acquisition related expenses, changes in fair value of contingent consideration, amortization of intangibles, and goodwill and long-lived asset impairment. We define EBITDA as U.S. GAAP net income/(loss) before interest expense, interest income and other expense/(income), the gain/(loss) on the sale of property and equipment, goodwill and long-lived asset impairments, provision/(benefit) for income taxes, and depreciation and amortization. We believe EBITDA provides a useful metric to investors to compare us with other companies within our industry and across industries. We define Adjusted EBITDA as EBITDA adjusted for acquisition related expenses, changes in fair value of contingent consideration and share-based compensation. We use Adjusted EBITDA as a supplemental measure to review and assess operating performance. We also believe use of Adjusted EBITDA facilitates investors&#8217; use of operating performance comparisons from period to period, as well as across companies.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">32</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">In our May 6, 2025 earnings press release, as furnished on Form 8-K, we included Non-GAAP net income, EBITDA and Adjusted EBITDA. The terms Non-GAAP net income, EBITDA, and Adjusted EBITDA are not defined under U.S. GAAP, and are not measures of operating income, operating performance or liquidity presented in analytical tools, and when assessing our operating performance, Non-GAAP net income, EBITDA, and Adjusted EBITDA should not be considered in isolation, or as a substitute for net income/(loss) or other consolidated income statement data prepared in accordance with U.S. GAAP. Some of these limitations include, but are not limited to:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:8%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">EBITDA and Adjusted EBITDA do not reflect our cash expenditures or future requirements for capital expenditures or contractual commitments;</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">they do not reflect changes in, or cash requirements for, our working capital needs;</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">they do not reflect the interest expense, or the cash requirements necessary to service interest or principal payments, on our debt that we may incur;</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">they do not reflect income taxes or the cash requirements for any tax payments;</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">although depreciation and amortization are non-cash charges, the assets being depreciated and amortized will be replaced sometime in the future, and EBITDA and Adjusted EBITDA do not reflect any cash requirements for such replacements;</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">while share-based compensation is a component of operating expense, the impact on our financial statements compared to other companies can vary significantly due to such factors as the assumed life of the options and the assumed volatility of our common stock; and</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">other companies may calculate EBITDA and Adjusted EBITDA differently than we do, limiting their usefulness as comparative measures.</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We compensate for these limitations by relying primarily on our U.S. GAAP results and using Non-GAAP net income, EBITDA, and Adjusted EBITDA only as supplemental support for management&#8217;s analysis of business performance. Non-GAAP net income, EBITDA and Adjusted EBITDA are calculated as follows for the periods presented.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>Reconciliation of Non-GAAP Financial Measures</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">In accordance with the requirements of Regulation G issued by the SEC, we are presenting the most directly comparable U.S. GAAP financial measures and reconciling the unaudited Non-GAAP financial metrics to the comparable U.S. GAAP measures.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td colspan="9" style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Reconciliation of U.S. GAAP Net Income/(Loss) to Non-GAAP Net Income</strong></p></td></tr><tr style="height:15px"><td colspan="9" style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;">(Unaudited, in thousands, except for per share and share data)</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">U.S. GAAP net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,171</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">434</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Share-based compensation</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">726</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">728</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Amortization of intangible assets</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">706</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">760</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Non-GAAP net income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">2,603</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">1,922</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Non-GAAP earnings per common share:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Basic</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.09</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.07</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Diluted</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.08</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.06</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Weighted-average common shares outstanding:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Basic</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">28,024,280</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">26,314,903</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Diluted</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">31,092,775</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">30,142,100</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td colspan="9" style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Reconciliation of U.S. GAAP Net Income/(Loss) to EBITDA to Adjusted EBITDA</strong></p></td></tr><tr style="height:15px"><td colspan="9" style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;">(Unaudited, in thousands)</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">U.S. GAAP net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,171</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">434</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Depreciation and amortization</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">771</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">840</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Interest expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">9</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">13</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(74</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">9</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Income tax provision</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">44</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">27</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">EBITDA</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,921</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,323</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Share-based compensation</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">726</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">728</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Adjusted EBITDA</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">2,647</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">2,051</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">33</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0in"><strong>CRITICAL ACCOUNTING POLICIES AND ESTIMATES</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">In preparing our financial statements, we make estimates, assumptions and judgments that can have a significant impact on our revenue, operating income or loss and net income or loss, as well as on the value of certain assets and liabilities on our balance sheet.&#160; Please see Note 1 of Part I, Item 1 of this quarterly report on Form 10-Q for a summary of significant accounting policies. In addition, the estimates, assumptions and judgments involved in our accounting policies described in critical accounting policies and estimates are disclosed in our Annual Report on Form 10-K for the year ended December 31, 2024.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>Segment Operating Results </strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 24.5pt; text-align:justify;">The Company has two operating segments, which consist of Cloud Telecommunications Services and Software Solutions. The information below is organized in accordance with our two reportable segments. Segment operating income is equal to segment net revenue less segment cost of service revenue, cost of software solution revenue, cost of product revenue, sales and marketing, research and development, and general and administrative expenses.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>Operating Results of our Cloud Telecommunications Services Segment (in thousands):</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Cloud Telecommunications Services</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Service revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">8,182</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,845</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Product revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,007</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,295</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Total revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">9,189</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">9,140</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Operating expenses:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Cost of service revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,487</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,109</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Cost of product revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">599</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">730</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Selling and marketing</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,852</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,796</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">General and administrative</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,938</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,158</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Research and development</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">132</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">269</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 30px">Total operating expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">9,008</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">9,062</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income/(loss) from operations</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">181</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">78</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other income/(expense), net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">81</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(5</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income/(loss) before income tax</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">262</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">73</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>Three months ended March 31, 2025 compared to three months ended March 31, 2024</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Service Revenue</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Cloud telecommunications service revenue consists primarily of fees collected for cloud telecommunications services, professional services, interest from sales-type leases, reselling broadband Internet services, managed IT service, and administrative fees. &#160;The following table reflects our service revenue for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Service revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">8,182</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,845</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">337</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The increase in service revenue is due to an increase in telecommunications services fees of $306, an increase in fees, commissions, and other, recognized over time of $98, and an increase in sales-type lease interest of $46, offset by a decrease in one-time fees, commissions and other of $113. A substantial portion of Cloud Telecommunications service revenue is generated through thirty-six to sixty month service contracts. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Product Revenue</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Product revenue consists primarily of fees collected from the sale of desktop phone devices, third-party equipment, and device as a service. The following table reflects our product revenue for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">34</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Product revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,007</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,295</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(288</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(22</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">Product revenue fluctuates from one period to the next based on timing of installations. Our typical customer installation is complete within 30-60 days. However, larger enterprise customers can take multiple months, depending on size and the number of locations. Product revenue is recognized when products have been installed and services commence. Additionally, product revenue can fluctuate due to the allocation of discounts or sales promotions across the performance obligations.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><em>Remaining Performance Obligations</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Remaining Performance Obligations (RPOs) represents the total contract value of all contracts signed, less revenue recognized from those contracts as of March 31, 2025 and 2024. RPO&#8217;s increased 14%, or $6,602 to $54,683 as of March 31, 2025 as compared to $48,082 as of March 31, 2024. Below is a table which displays the Cloud Telecommunications segment remaining performance obligations as of January 1, 2025 and 2024, and March 31, 2025 and 2024, which we expect to recognize as revenue within the next thirty-six to sixty months (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cloud Telecommunications RPOs as of January 1, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">55,369</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cloud Telecommunications RPOs as of March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">54,683</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cloud Telecommunications RPOs as of January 1, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">44,810</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cloud Telecommunications RPOs as of March 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">48,081</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><em>Cost of Service Revenue</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Cost of service revenue consists primarily of fees we pay to third-party telecommunications carriers, broadband Internet providers, software providers, costs related to installations, contract labor costs, credit card processing fees, cost of data center hosting, software costs, customer support salaries, benefits, bonuses, and share-based compensation. The following table reflects our cost of service revenue for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Cost of service revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,487</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,109</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">378</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">12</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The increase in cost of service revenue was primarily related to an increase in third-party telecommunications charges of $135, an increase in salaries, benefits, bonuses, and share-based compensation of $71, an increase in contract labor costs to assist with the migration of our customers to our new VIP platform of $55, an increase in software costs of $43, an increase in data center hosting costs of $41, and an increase in other cost of service revenue of $33.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Cost of Product Revenue</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Cost of product revenue consists of the costs associated with desktop phone devices and third-party equipment. The following table reflects our cost of product revenue for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Cost of product revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">599</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">730</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(131</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(18</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The decrease is directly related to a decrease in product revenue for the quarter.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">35</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Selling and Marketing</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Selling and marketing expenses consist primarily of direct and channel sales representative salaries, benefits, bonuses, and share-based compensation, partner channel commissions, amortization of costs to acquire contracts, travel expenses, lead generation services, trade shows, internal and third-party marketing costs, amortization of customer relationship intangible assets, the production of marketing materials, and sales support software. The following table reflects our selling and marketing expenses for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Selling and marketing</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,852</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,796</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">56</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The increase in selling and marketing expense is primarily related to an increase in commission expense of $161 directly related to the increase in revenue and an increase in other sales and marketing expense of $22, offset by a decrease in bad debt related to a decrease in our credit loss reserve of $127.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>General and Administrative</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">General and administrative expenses consist of salaries, benefits, bonuses and share-based compensation for executives, administrative personnel, legal, rent, equipment, accounting and other professional services, investor relations, depreciation, amortization of intangible assets, and other administrative corporate expenses. The following table reflects our general and administrative expenses for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">General and administrative</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,938</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,158</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(220</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(10</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The decrease in general and administrative expenses is primarily related to a decrease in executive and administrative salaries, benefits, bonuses, and share-based compensation of $201, a decrease in telecommunication fees of $44, and a decrease in other general and administrative expenses of $2, offset by an increase in accounting software costs of $27 associated with service contract fees for our new accounting system.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Research and Development</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Research and development expenses primarily consist of salaries, benefits, bonuses, and share-based compensation, and outsourced engineering services related to the development of new cloud telecommunications features and products. The following table reflects our research and development expenses for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Research and development</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">132</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">269</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(137</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(51</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The decrease in research and development expenses is primarily related to the allocation of engineering resources to our Software Solutions segment of $130 as we finalize the migration of our customers to our VIP platform and a decrease in other research and development expenses of $7.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Other Income/(Expense)</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Other income/(expense) primarily relates to interest income, interest expense, net foreign exchange gains or losses, gain on the sale of property and equipment, and credit card cash back rewards.&#160; The following table reflects our other income/(expense) for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other income/(expense), net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">81</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(5</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">86</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,720</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The change in other income/(expense) is primarily from an increase in interest income of $79, an increase in other income of $3, and a decrease in interest expense of $4.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">36</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>Operating Results of our Software Solutions segment (in thousands):</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="6"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>&#160;</strong></p></td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:bottom;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;"><strong>Software Solutions</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>&#160;</strong></p></td><td class="hdcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>&#160;</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>&#160;</strong></p></td><td class="hdcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;">Software solutions revenue</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,868</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,146</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="MARGIN: 0px 0px 0px 30px;vertical-align:top;">Operating expenses:</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="MARGIN: 0px 0px 0px 30px; TEXT-INDENT: 15px;vertical-align:top;">Cost of software solutions revenue</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,490</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,392</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="MARGIN: 0px 0px 0px 30px; TEXT-INDENT: 15px;vertical-align:top;">Selling and marketing</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,437</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,231</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="TEXT-INDENT: 15px;vertical-align:top;">General and administrative</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,581</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,138</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="TEXT-INDENT: 15px;vertical-align:top;">Research and development</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;">1,391</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;">980</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 30px; text-align:left;">Total operating expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;">5,899</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;">4,741</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;">Income/(loss) from operations</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">969</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">405</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;">Other income/(expense), net</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;">(16</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;">(17</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;">Income/(loss) before income tax </td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;">953</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;">388</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>Three months ended March 31, 2025 compared to three months ended March 31, 2024</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Software Solutions Revenue</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Software solutions revenue consists primarily of software license fees, subscription maintenance and support, professional services, and annual user group meeting fees. Software licenses are billed by the number of concurrent sessions a customer has purchased or subscribes to. Subscription maintenance and support is ongoing and provides for software updates and improvements, support for add-on modules, bug fixes, and other general maintenance items. Professional services and other revenues consist of professional services such as the installation of software and integration of other modules, training and implementation as well as custom mobile branding. The following table reflects our service revenue for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Software solutions revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,868</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,146</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,722</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">33</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The increase in software solutions revenue is primarily related to an increase in perpetual software license revenue of $1,064 and an increase in recurring software license and maintenance and support subscriptions of $676, offset by a decrease in professional services and other revenue of $18.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><em>Remaining Performance Obligations</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Remaining Performance Obligations (RPOs) represents the total contract value of all contracts signed, less revenue recognized from those contracts as of March 31, 2025 and 2024. RPOs increased 41%, or $7,971 to $27,266 as of March 31, 2025, as compared to $19,295 as of March 31, 2024. Below is a table which displays the Software solutions segment remaining performance obligations as of January 1, 2025 and 2024, and March 31, 2025 and 2024, which we expect to recognize as revenue within the next thirty-six to sixty-months (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%" cellpadding="0"><tbody><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software solutions RPOs as of January 1, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">30,262</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software solutions RPOs as of March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">27,266</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software solutions RPOs as of January 1, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">19,122</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software solutions RPOs as of March 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">19,295</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><em>Cost of Software Solutions Revenue</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Cost of software solutions revenue consists primarily of salaries, benefits, bonuses, and share-based compensation, amortization expense for developed technologies intangible assets, cost of data center hosting, third-party software, annual user group meeting costs, and outsourced services required to install and support software solutions. The following table reflects our cost of service revenue for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">37</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Cost of software solutions revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,490</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,392</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">98</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The increase in cost of software solutions revenue is primarily related to an increase in salaries, benefits, bonuses, and share-based compensation of $82 and an increase in software costs of $28, offset by a decrease in other cost of software solutions revenue of $12.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Selling and Marketing</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Selling and marketing expenses consist primarily of sales and marketing salaries, benefits, bonuses, commissions, share-based compensation, travel expenses, lead generation services, trade shows, third-party marketing services, the production of marketing materials, annual user group meeting costs, and sales support software. The following table reflects our selling and marketing expenses for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Selling and marketing</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,437</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,231</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">206</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">17</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The increase in selling and marketing expense is primarily related to an increase in commission expense of $176 directly related to the increase in revenue and an increase in marketing materials and trade shows of $78, offset by a decrease in sales support software of $16 and a decrease in other selling and marketing costs of $32.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>General and Administrative</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">General and administrative expenses consist of salaries, benefits, bonuses and share-based compensation for executives and administrative personnel, amortization of trademark and trade name intangible assets, legal, rent, equipment, accounting and other professional services, consulting fees and other administrative corporate expenses. The following table reflects our general and administrative expenses for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">General and administrative</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,581</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,138</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">443</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">39</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The increase in general and administrative expenses is primarily related to an increase in salaries, benefits, bonuses, and share-based compensation of $338, an increase in professional service costs of $28, an increase in accounting software costs of $27 associated with service contract fees for our new accounting system, an increase in consulting fees of $21, and an increase in other general and administrative expenses of $29.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Research and Development</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Research and development expenses primarily consist of salaries, benefits, bonuses, share-based compensation, and outsourcing engineering services related to the development of our software solutions. The following table reflects our research and development expense for the year end March 31, 2024, compared to the year ended March 31, 2023:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Research and development</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,391</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">980</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">411</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">42</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The increase in research and development expenses is primarily related to an increase in salaries, benefits, bonuses, and share-based compensation of $357 due to the allocation of resources from the Cloud Telecommunications Services segment as we finalize the migration of our customers to the VIP platform and from an increase in headcount, and an increase in outsourced engineering services expenses of $61, offset by a decrease in other research and development expenses of $7.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">38</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Other Income/(Expense)</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Other income/(expense) primarily relates to net foreign exchange gains or losses and other income and expenses. The following table reflects our other income/(expense) for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other income/(expense), net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(16</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(17</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The change in other income/(expense) is primarily related to a decrease in other income of $25 and an increase in foreign exchange gains/(losses) of $24.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; TEXT-INDENT: 0in; text-align:justify;"><strong>Liquidity and Capital Resources</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Liquidity is a measure of our ability to access sufficient cash flows to meet the short-term and long-term cash requirements of our business operations. We finance our operations primarily through services, software solutions, and product sales to our customers. As of March 31, 2025 and December 31, 2024, we had cash and cash equivalents of $21,207 and $18,193, respectively. Changes in cash and cash equivalents are dependent upon changes in, among other things, working capital items such as contract liabilities, contract costs, accounts payable, accounts receivable, prepaid expenses, and various accrued expenses, as well as purchases of property and equipment, asset acquisitions, business combinations, and changes in our capital and financial structure due to debt repayments and issuances, stock option exercises, sales of equity investments and similar events. We believe that our operations along with existing liquidity sources will satisfy our cash requirements for at least the next 12 months.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Operating Activities</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Cash provided by or used in operating activities is driven by our net income/(loss), adjustments to reconcile to net cash provided by or used in operating activities, the timing of customer collections, as well as the amount and timing of disbursements to our vendors, the amount of cash we invest in personnel, marketing, and infrastructure costs to support the anticipated growth of our business. The following table reflects our net cash provided by/(used in) operating activities for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">&#160;Net cash provided by/(used in) operating activities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,238</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(166</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,404</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">846</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The net cash provided by operations for the three months ended March 31, 2025 was primarily driven by our net income of $1,171, non-cash expenses for depreciation and amortization of $771, share-based compensation of $726, and a decrease in trade receivables of $292, offset by a decrease in accounts payable and accrued expenses of $695, a decrease in contract liabilities of $334, an increase in equipment financing receivables of $241, an increase in contract costs of $192, and an increase in inventory of $183.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The net cash used in operations for the three months ended March 31, 2024 was primarily driven by an increase in trade receivables of $740, an increase in equipment financing receivables of $137, an increase in contract costs of $379, an increase in prepaid expense of $391, and a decrease in accounts payable and accrued expenses of $1,099, offset by non-cash expenses for depreciation and amortization of $840 and share-based compensation of $728, our net income for the three months ended March 31, 2024 of $434 and an increase in contract liabilities of $508.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Investing Activities</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Cash provided by or used in investing activities is driven by the purchase of property and equipment, business combinations, and asset acquisitions. The following table reflects our net cash provided by/(used in) investing activities for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:8pt">Net cash provided by/(used in) investing activities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">39</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Financing Activities</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">Cash provided by or used in financing activities is driven by the proceeds from the exercise of options, taxes paid on the net settlement of stock options and RSUs, payments of contingent consideration, proceeds from notes payable, repayments made on finance leases and notes payable, proceeds and repayments on line of credit, dividend payments, and proceeds from the issuance of common stock in connection with an offering. The following table reflects our net cash provided by financing activities for the three months ended March 31, 2025, compared to the three months ended March 31, 2024:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="14"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Dollar</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;" colspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Percent</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Change</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net cash provided by/(used in) financing activities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,763</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">859</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">904</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">105</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Net cash provided by financing activities for the three months ended March 31, 2025, primarily relates to cash received from the exercise of stock options of $1,979, offset by repayments made on notes payable of $117, the payments of employee tax withholdings from the net settlement of stock options and RSUs of $80, and repayments made on finance leases of $19.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Net cash provided by financing activities for the three months ended March 31, 2024, primarily relates to cash received from the exercise of options of $1,049, offset by repayments made on finance leases of $18, repayments made on notes payable of $112, and employee tax withholdings from the net settlement of stock options and RSUs of $60.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Contractual Obligations and Commitments</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Except as set forth in Notes 10, 14 and 15 in the accompanying notes to the Condensed Consolidated Financial Statements included in Part I, Item 1 of this Quarterly Report on Form 10-Q, there were no significant changes in our commitments under contractual obligations, as disclosed in our Annual Report on Form 10-K for the year ended December 31, 2024.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>Off Balance Sheet Arrangements</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">As of, March 31, 2025, we are not involved in any off-balance sheet arrangements, as defined in Item 303(a)(4)(ii) of SEC Regulation S-K.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>Related Party Transactions</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">On November 1, 2022, the Company completed the acquisition of Allegiant Networks, LLC, a Kansas limited liability company (the &#8220;Allegiant Networks&#8221;) to acquire from Seller one hundred percent (100%) of the issued and outstanding shares of Allegiant Networks in exchange for (i) a cash payment at closing in the amount of $2.0 million, (ii) a three-year promissory note by the Company in favor of Seller in the amount of $1.1 million, and (iii) 2,461,538 shares of the Company&#8217;s common stock, par value $0.001 per share. In connection with this transaction, the seller Bryan Dancer, became a greater than five percent shareholder of the Company. Therefore, the three-year promissory note in the amount of $1.1 million, is considered a related party transaction. The loan agreement has a term of three (3) years with quarterly payments of Ninety-Eight Thousand Three Hundred Eighty-one Dollars ($98,381), including interest at 4.00%, beginning on April 1, 2023. As of March 31, 2025 and December 31, 2024, the outstanding balance of the related party note payable was $384 and $478, respectively. During the three months ended March 31, 2025 and 2024, the Company paid principal of $94 and $90, respectively and interest of $4 and $8, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">On February 1, 2024, the Company entered into a consulting agreement with Steven G. Mihaylo, Chairman Emeritus of the board of directors and a greater than five percent shareholder. In exchange for his consulting services, Mr. Mihaylo is to receive monthly consideration of $14 or $168 annually. During the three months ended March 31, 2025 and 2024, the company paid $42 and $28, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; TEXT-INDENT: 0in; text-align:justify;"><strong>Impact of Recent Accounting Pronouncements</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The information set forth under Note 1 to the condensed consolidated financial statements under the caption &#8220;Recent Accounting Pronouncements&#8221; is incorporated herein by reference.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">40</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><span class="atag" style="display: inline" id="i3">Item 3. Quantitative and Qualitative Disclosures about Market Risk</span></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Foreign Currency Risk</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">For all periods presented, our sales and operating expenses were predominately denominated in U.S. dollars. We therefore have not had material foreign currency risk associated with sales and cost-based activities. The functional currency of our material operating entities is the U.S. dollar.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">For the periods presented, we believe the exposure to foreign currency fluctuation from operating expenses is immaterial as the related costs do not constitute a significant portion of our total expenses. As we grow operations, our exposure to foreign currency risk may become more significant.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><em>Inflation Risk</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">We do not believe that inflation has had a material effect on our business, financial condition, or results of operations. If our costs were to become subject to significant inflationary pressures, we may not be able to fully offset such higher costs through price increases. Our inability or failure to do so could harm our business, financial condition and results of operations.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><span class="atag" style="display: inline" id="i4">Item 4. Controls and Procedures</span></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Conclusion Regarding the Effectiveness of Disclosure Controls and Procedures</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">Our Chief Executive Officer and Chief Financial Officer, after evaluating the effectiveness of our disclosure controls and procedures (as defined in Rule 13a-15(e) or 15d-15(e) under the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;)) as of the end of the period covered by this Report, have concluded that, based on the evaluation of these controls and procedures, our disclosure controls and procedures were effective.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Changes in Internal Control over Financial Reporting</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">There have been no changes in our internal control over financial reporting (as defined in Rules 13a-15(f) and 15d-15(f) under the Exchange Act) during the three months ended March 31, 2025 that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">41</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong><span class="atag" style="display: inline" id="p2">PART II - OTHER INFORMATION</span></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><span class="atag" style="display: inline" id="p2i1">Item 1. Legal Proceedings</span></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">From time to time, we are involved in lawsuits, claims, investigations and proceedings that arise in the ordinary course of business. There are no matters pending or threatened that we expect to have a material adverse impact on our business, results of operations, financial condition or cash flows.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><span class="atag" style="display: inline" id="p2i1a">Item 1A. Risk Factors</span></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">There are many risk factors that may affect our business and the results of our operations, many of which are beyond our control. Information on certain risks that we believe are material to our business is set forth in &#8220;Part I &#8211; Item 1A. Risk Factors&#8221; of the 2024 Form 10-K.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><span class="atag" style="display: inline" id="p2i2">Item 2. Unregistered Sales of Equity Securities and Use of Proceeds</span></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">None</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">42</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><span class="atag" style="display: inline" id="i6">Item 6. Exhibits</span></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>EXHIBIT INDEX</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;" rowspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Exhibit</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>No.</strong></p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: #000000 1px solid;width:58%;vertical-align:bottom;" rowspan="2"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Exhibit&#160;Description</strong></p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:22%;vertical-align:bottom;" colspan="5"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Incorporated By Reference</strong></p></td><td style="width:1%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:7%;vertical-align:bottom;" rowspan="2"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Filed</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Herewith</strong></p></td></tr><tr style="height:15px"><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:5%;vertical-align:bottom;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Form</strong></p></td><td style="width:1%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Date</strong></p></td><td style="width:1%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Number</strong></p></td><td style="width:1%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p></td></tr><tr style="height:15px"><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:58%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:7%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:6%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><a href="cxdo_ex311.htm">31.1</a></p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:58%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><a href="cxdo_ex311.htm">Certification Pursuant to Rules 13a-14(a) under the Securities Exchange Act of 1934 as amended</a></p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:7%;vertical-align:bottom;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">X</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:6%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><a href="cxdo_ex312.htm">31.2</a></p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:58%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><a href="cxdo_ex312.htm">Certification Pursuant to Rules 13a-14(a) under the Securities Exchange Act of 1934 as amended</a></p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:7%;vertical-align:bottom;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">X</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:6%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><a href="cxdo_ex321.htm">32.1</a></p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:58%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><a href="cxdo_ex321.htm">Certification Pursuant to 18 U.S.C. Section 1350</a></p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:7%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">X</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:6%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><a href="cxdo_ex322.htm">32.2</a></p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:58%;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><a href="cxdo_ex322.htm">Certification Pursuant to 18 U.S.C. Section 1350</a></p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:7%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">X</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:6%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">101.INS</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:58%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">XBRL INSTANCE DOCUMENT</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:7%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:6%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">101.SCH</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:58%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:7%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:6%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">101.CAL</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:58%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:7%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:6%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">101.DEF</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:58%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:7%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:6%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">101.LAB</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:58%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:7%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:6%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">101.PRE</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:58%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:5%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:7%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">______________________</p><table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:3%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">*</p></td><td style="width:84%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">In accordance with Rule&#160;406T of Regulation&#160;S-T, these XBRL (eXtensible Business Reporting Language) documents are furnished and not filed or a part of a registration statement or prospectus for purposes of Sections&#160;11 or 12 of the Securities Act of 1933 or Section&#160;18 of the Securities Exchange Act of 1934 and otherwise are not subject to liability under these sections.</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">43</td></tr><tr style="height:15px"><td><p style="page-break-after: always"></p></td></tr><tr style="height:15px"><td><em><a href="#TOC">Table of Contents</a></em></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0.75in; text-align:center;"><strong><span class="atag" style="display: inline" id="sig">SIGNATURES</span></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; TEXT-INDENT: 0.5in; text-align:justify;">Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned, thereunto duly authorized.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">&#160;</p></td><td colspan="2" style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>Crexendo, Inc.</strong></p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="width:50%;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">&#160;</p></td><td style="width:3%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:35%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:12%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; TEXT-INDENT: 0in; text-align:left;">May 6, 2025</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">By: </p></td><td style="BORDER-BOTTOM: 1px solid;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">/s/ Jeffrey G. Korn</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">&#160;</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Jeffrey G. Korn</p><p style="font-size:10pt;font-family:times new roman;margin:0px">Chief Executive Officer</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td style="width:50%;vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; TEXT-INDENT: 0in; text-align:left;">May 6, 2025</p></td><td style="width:3%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">By: </p></td><td style="BORDER-BOTTOM: 1px solid;width:35%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">/s/ Ronald Vincent</p></td><td style="width:12%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:left;">&#160;</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Ronald Vincent</p><p style="font-size:10pt;font-family:times new roman;margin:0px">Chief Financial Officer</p></td><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table style="border-spacing:0;font:10pt times new roman;width:100%" cellpadding="0"><tbody><tr style="height:15px"><td class="hpbhr">&#160;</td></tr><tr style="height:15px"><td style="BORDER-BOTTOM: black 1px solid; TEXT-INDENT: 0px;text-align:right;">44</td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>cxdo_ex311.htm
<DESCRIPTION>CERTIFICATION
<TEXT>
<html><head><title>cxdo_ex311.htm</title><!--Document created using EDGARMaster--></head><body style="TEXT-ALIGN: justify; FONT: 10pt times new roman"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;"><strong>EXHIBIT 31.1</strong></p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;">&nbsp;</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Certification Pursuant to</strong></p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Rules 13a-14(a) and 15d-14(a) under the Securities Exchange Act of 1934, as Amended</strong></p> <p style="font-size:10pt;font-family:times new roman;margin:0px">&nbsp;</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">I, Jeffrey G. Korn, certify that:</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&nbsp;</p> <table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:4%;vertical-align:top;"> <p style="margin:0px">1.</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">I have reviewed this Quarterly Report on Form 10-Q of Crexendo, Inc.;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td></tr> <tr style="height:15px"> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">2.</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">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;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td></tr> <tr style="height:15px"> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">3.</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">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;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td></tr> <tr style="height:15px"> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">4.</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">The registrant&#8217;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</p></td></tr></table>&nbsp; <table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:4%;"> <p style="margin:0px">&nbsp;</p></td> <td style="width:4%;vertical-align:top;"> <p style="margin:0px">a)</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">b)</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">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;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">c)</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">d)</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting; and</p></td></tr></table>&nbsp; <table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:4%;vertical-align:top;"> <p style="margin:0px">5.</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">The registrant&#8217;s other certifying officer(s) 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 functions):</p></td></tr></table> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&nbsp;</p> <table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:4%;"> <p style="margin:0px">&nbsp;</p></td> <td style="width:4%;vertical-align:top;"> <p style="margin:0px">a)</p></td> <td style="vertical-align:top;"> <p style="margin:0px">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information; and</p></td></tr> <tr style="height:15px"> <td> <p style="margin:0px">&nbsp;</p></td> <td> <p style="margin:0px;text-indent:30px">&nbsp;</p></td> <td> <p style="margin:0px">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="margin:0px">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="margin:0px">b)</p></td> <td style="vertical-align:top;"> <p style="margin:0px">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</p></td></tr></table>&nbsp; <table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:50%;vertical-align:top;"> <p style="margin:0px">Date: May 6, 2025</p></td> <td style="width:3%;vertical-align:top;"> <p style="margin:0px">By:&nbsp;&nbsp;</p></td> <td style="BORDER-BOTTOM: 1px solid;width:35%;vertical-align:top;"> <p style="margin:0px">/s/ Jeffrey G. Korn</p></td> <td style="width:12%;"> <p style="margin:0px">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="margin:0px">&nbsp;</p></td> <td> <p style="margin:0px">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="margin:0px">Jeffrey G. Korn</p> <p style="margin:0px">Chief Executive Officer</p></td> <td> <p style="margin:0px">&nbsp;</p></td></tr></table> <p style="font-size:10pt;font-family:times new roman;margin:0px">&nbsp;</p><body>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>cxdo_ex312.htm
<DESCRIPTION>CERTIFICATION
<TEXT>
<html><head><title>cxdo_ex312.htm</title><!--Document created using EDGARMaster--></head><body style="TEXT-ALIGN: justify; FONT: 10pt times new roman"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;"><strong>EXHIBIT 31.2</strong></p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;">&nbsp;</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Certification Pursuant to</strong></p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>Rules 13a-14(a) and 15d-14(a) under the Securities Exchange Act of 1934, as Amended</strong></p> <p style="font-size:10pt;font-family:times new roman;margin:0px">&nbsp;</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">I, Ronald Vincent, certify that:</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&nbsp;</p> <table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:4%;vertical-align:top;"> <p style="margin:0px">1.</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">I have reviewed this Quarterly Report on Form 10-Q of Crexendo, Inc.;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td></tr> <tr style="height:15px"> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">2.</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">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;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td></tr> <tr style="height:15px"> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">3.</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">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;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td></tr> <tr style="height:15px"> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">4.</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">The registrant&#8217;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</p></td></tr></table>&nbsp; <table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:4%;"> <p style="margin:0px">&nbsp;</p></td> <td style="width:4%;vertical-align:top;"> <p style="margin:0px">a)</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">b)</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">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;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">c)</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;">&nbsp;</p></td> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="MARGIN: 0px; text-align:justify;">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">d)</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting; and</p></td></tr></table>&nbsp; <table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:4%;vertical-align:top;"> <p style="margin:0px">5.</p></td> <td style="vertical-align:top;"> <p style="MARGIN: 0px; text-align:justify;">The registrant&#8217;s other certifying officer(s) 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 functions):</p></td></tr></table> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 1.1in; text-align:justify;">&nbsp;</p> <table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:4%;"> <p style="margin:0px">&nbsp;</p></td> <td style="width:4%;vertical-align:top;"> <p style="margin:0px">a)</p></td> <td style="vertical-align:top;"> <p style="margin:0px">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information; and</p></td></tr> <tr style="height:15px"> <td> <p style="margin:0px">&nbsp;</p></td> <td> <p style="margin:0px;text-indent:30px">&nbsp;</p></td> <td> <p style="margin:0px">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="margin:0px">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="margin:0px">b)</p></td> <td style="vertical-align:top;"> <p style="margin:0px">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</p></td></tr></table> <p style="font-size:10pt;font-family:times new roman;margin:0px">&nbsp;</p> <table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:50%;vertical-align:top;"> <p style="margin:0px">Date: May 6, 2025</p></td> <td style="width:3%;vertical-align:top;"> <p style="margin:0px">By:&nbsp;&nbsp;</p></td> <td style="BORDER-BOTTOM: 1px solid;width:35%;vertical-align:top;"> <p style="margin:0px">/s/ Ronald Vincent</p></td> <td style="width:12%;"> <p style="margin:0px">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="margin:0px">&nbsp;</p></td> <td> <p style="margin:0px">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="margin:0px">Ronald Vincent</p> <p style="margin:0px">Chief Financial Officer</p></td> <td> <p style="margin:0px">&nbsp;</p></td></tr></table> <p style="font-size:10pt;font-family:times new roman;margin:0px">&nbsp;</p><body>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>4
<FILENAME>cxdo_ex321.htm
<DESCRIPTION>CERTIFICATION
<TEXT>
<html><head><title>cxdo_ex321.htm</title><!--Document created using EDGARMaster--></head><body style="TEXT-ALIGN: justify; FONT: 10pt times new roman"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;"><strong>EXHIBIT 32.1</strong></p> <p style="font-size:10pt;font-family:times new roman;margin:0px">&nbsp;</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>CERTIFICATIONS PURSUANT TO</strong></p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</strong></p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>(18 U.S.C. SECTION 1350)</strong></p> <p style="font-size:10pt;font-family:times new roman;margin:0px">&nbsp;</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">In connection with the Quarterly Report of Crexendo, Inc., a Nevada corporation (the &#8220;Company&#8221;), on Form 10-Q for the quarter ended March 31, 2025, as filed with the Securities and Exchange Commission (the &#8220;Report&#8221;), Jeffrey G. Korn, Chief Executive Officer of the Company, does hereby certify, pursuant to &#167; 906 of the Sarbanes-Oxley Act of 2002 (18 U.S.C. &#167; 1350), that to his knowledge:</p> <p style="font-size:10pt;font-family:times new roman;margin:0px">&nbsp;</p> <table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:4%;"> <p style="margin:0px">&nbsp;</p></td> <td style="width:4%;vertical-align:top;"> <p style="margin:0px">(1)</p></td> <td style="vertical-align:top;"> <p style="margin:0px">The Report fully complies with the requirements of section 13(a) or 15(d) of the Securities Exchange Act of 1934; and</p></td></tr> <tr style="height:15px"> <td> <p style="margin:0px">&nbsp;</p></td> <td> <p style="margin:0px;text-indent:30px">&nbsp;</p></td> <td> <p style="margin:0px">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="margin:0px">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="margin:0px">(2)</p></td> <td style="vertical-align:top;"> <p style="margin:0px">The information contained in the Report fairly presents, in all material respects, the financial condition and result of operations of the Company.</p></td></tr></table>&nbsp; <table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:50%;vertical-align:top;"> <p style="margin:0px">Date: May 6, 2025</p></td> <td style="width:3%;vertical-align:top;"> <p style="margin:0px">By:&nbsp;&nbsp;</p></td> <td style="BORDER-BOTTOM: 1px solid;width:35%;vertical-align:top;"> <p style="margin:0px">/s/ Jeffrey G. Korn</p></td> <td style="width:12%;"> <p style="margin:0px">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="margin:0px">&nbsp;</p></td> <td> <p style="margin:0px">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="margin:0px">Jeffrey G. Korn</p> <p style="margin:0px">Chief Executive Officer</p></td> <td> <p style="margin:0px">&nbsp;</p></td></tr></table> <p style="font-size:10pt;font-family:times new roman;margin:0px">&nbsp;</p><body>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>5
<FILENAME>cxdo_ex322.htm
<DESCRIPTION>CERTIFICATION
<TEXT>
<html><head><title>cxdo_ex322.htm</title><!--Document created using EDGARMaster--></head><body style="TEXT-ALIGN: justify; FONT: 10pt times new roman"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:right;"><strong>EXHIBIT 32.2</strong></p> <p style="font-size:10pt;font-family:times new roman;margin:0px">&nbsp;</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>CERTIFICATIONS PURSUANT TO</strong></p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</strong></p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>(18 U.S.C. SECTION 1350)</strong></p> <p style="font-size:10pt;font-family:times new roman;margin:0px">&nbsp;</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">In connection with the Quarterly Report of Crexendo, Inc., a Nevada corporation (the &#8220;Company&#8221;), on Form&nbsp;10-Q for the quarter ended March 31, 2025, as filed with the Securities and Exchange Commission (the &#8220;Report&#8221;), Ronald Vincent, Chief Financial Officer of the Company, does hereby certify, pursuant to &#167;&nbsp;906 of the Sarbanes-Oxley Act of 2002 (18 U.S.C. &#167; 1350), that to his knowledge:</p> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&nbsp;</p> <table style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:4%;"> <p style="margin:0px">&nbsp;</p></td> <td style="width:4%;vertical-align:top;"> <p style="margin:0px">(1)</p></td> <td style="vertical-align:top;"> <p style="margin:0px">The Report fully complies with the requirements of section 13(a) or 15(d) of the Securities Exchange Act of 1934; and</p></td></tr> <tr style="height:15px"> <td> <p style="margin:0px">&nbsp;</p></td> <td> <p style="margin:0px;text-indent:30px">&nbsp;</p></td> <td> <p style="margin:0px">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="margin:0px">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="margin:0px">(2)</p></td> <td style="vertical-align:top;"> <p style="margin:0px">The information contained in the Report fairly presents, in all material respects, the financial condition and result of operations of the Company.</p></td></tr></table>&nbsp; <table style="border-spacing:0;font-size:10pt;width:100%" cellpadding="0"> <tr style="height:15px"> <td style="width:50%;vertical-align:top;"> <p style="margin:0px">Date: May 6, 2025</p></td> <td style="width:3%;vertical-align:top;"> <p style="margin:0px">By:&nbsp;&nbsp;</p></td> <td style="BORDER-BOTTOM: 1px solid;width:35%;vertical-align:top;"> <p style="margin:0px">/s/ Ronald Vincent</p></td> <td style="width:12%;"> <p style="margin:0px">&nbsp;</p></td></tr> <tr style="height:15px"> <td> <p style="margin:0px">&nbsp;</p></td> <td> <p style="margin:0px">&nbsp;</p></td> <td style="vertical-align:top;"> <p style="margin:0px">Ronald Vincent</p> <p style="margin:0px">Chief Financial Officer</p></td> <td> <p style="margin:0px">&nbsp;</p></td></tr></table> <p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&nbsp;</p><body>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>6
<FILENAME>cxdo-20250331.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii" standalone="yes"?>
<!--XBRL Document Created with XBRLMaster-->
<!--Version: 2.3.08-->
<!--Based on XBRL 2.1-->
<!--Date of creation: 05/05/2025-->
<!--Software architectural design and coding: A'c Dharmapremananda Avt.-->
<!--Copyright (c) 2025 I-NET Business Solutions, Inc. All Rights Reserved.-->
<schema xmlns:xl="http://www.xbrl.org/2003/XLink" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:currency="http://xbrl.sec.gov/currency/2024" xmlns:us-gaap-att="http://fasb.org/us-gaap/attributes" xmlns:sic="http://xbrl.sec.gov/sic/2024" xmlns:exch="http://xbrl.sec.gov/exch/2024" xmlns:invest="http://xbrl.sec.gov/invest/2013-01-31" xmlns:negated="http://www.xbrl.org/2009/role/negated" xmlns:naics="http://xbrl.sec.gov/naics/2024" xmlns:us-types="http://fasb.org/us-types/2024" xmlns:stpr="http://xbrl.sec.gov/stpr/2024" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:country="http://xbrl.sec.gov/country/2024" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:srt-types="http://fasb.org/srt-types/2024" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:srt-roles="http://fasb.org/srt-roles/2024" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:srt="http://fasb.org/srt/2024" xmlns:us-gaap="http://fasb.org/us-gaap/2024" xmlns:ecd="http://xbrl.sec.gov/ecd/2024" xmlns:cxdo="http://cxdo.com/20250331" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://cxdo.com/20250331">
  <annotation>
    <appinfo>
      <link:roleType roleURI="http://cxdo.com/role/Cover" id="Cover">
        <link:definition>000001 - 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 roleURI="http://cxdo.com/role/CondensedConsolidatedBalanceSheets" id="CondensedConsolidatedBalanceSheets">
        <link:definition>110200 - Statement - Condensed 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 roleURI="http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical" id="CondensedConsolidatedBalanceSheetsParenthetical">
        <link:definition>110201 - Statement - Condensed 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 roleURI="http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" id="CondensedConsolidatedStatementsOfOperationsUnaudited">
        <link:definition>124100 - Statement - Condensed Consolidated Statements of Operations (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 roleURI="http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" id="CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited">
        <link:definition>148400 - Statement - Condensed Consolidated Statements of Comprehensive Income(Loss) (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 roleURI="http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited" id="ConsolidatedStatementsOfStockholdersEquityUnaudited">
        <link:definition>148600 - Statement - Consolidated Statements of Stockholders' Equity (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 roleURI="http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" id="CondensedConsolidatedStatementsOfCashFlowsUnaudited">
        <link:definition>170000 - Statement - Condensed Consolidated Statements of Cash Flows (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 roleURI="http://cxdo.com/role/SignificantAccountingPolicies" id="SignificantAccountingPolicies">
        <link:definition>290000 - Disclosure - 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 roleURI="http://cxdo.com/role/Revenue" id="Revenue">
        <link:definition>290001 - Disclosure - 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 roleURI="http://cxdo.com/role/EarningsPerCommonShare" id="EarningsPerCommonShare">
        <link:definition>290002 - Disclosure - Earnings Per Common 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 roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLosses" id="TradeReceivablesAndAllowanceForCreditLosses">
        <link:definition>290003 - Disclosure - Trade Receivables and Allowance for Credit Losses</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLosses" id="EquipmentFinancingReceivablesAndAllowanceForCreditLosses">
        <link:definition>290004 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/PrepaidExpenses" id="PrepaidExpenses">
        <link:definition>290005 - Disclosure - Prepaid Expenses</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/PropertyAndEquipment" id="PropertyAndEquipment">
        <link:definition>290006 - Disclosure - Property and Equipment</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwill" id="IntangibleAssetsAndGoodwill">
        <link:definition>370000 - Disclosure - Intangible Assets and Goodwill</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/AccruedExpenses" id="AccruedExpenses">
        <link:definition>400000 - Disclosure - Accrued Expenses</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/NotesPayable" id="NotesPayable">
        <link:definition>460000 - Disclosure - Notes Payable</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/LineOfCredit" id="LineOfCredit">
        <link:definition>460001 - Disclosure - 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 roleURI="http://cxdo.com/role/FairValueMeasurements" id="FairValueMeasurements">
        <link:definition>815000 - Disclosure - Fair Value Measurements</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/IncomeTaxes" id="IncomeTaxes">
        <link:definition>815001 - Disclosure - Income Taxes</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/Leases" id="Leases">
        <link:definition>842000 - 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 roleURI="http://cxdo.com/role/CommitmentsAndContingencies" id="CommitmentsAndContingencies">
        <link:definition>842001 - 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 roleURI="http://cxdo.com/role/SegmentReporting" id="SegmentReporting">
        <link:definition>842002 - Disclosure - Segment Reporting</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/SignificantAccountingPoliciesPolicies" id="SignificantAccountingPoliciesPolicies">
        <link:definition>842003 - Disclosure - 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 roleURI="http://cxdo.com/role/SignificantAccountingPoliciesTables" id="SignificantAccountingPoliciesTables">
        <link:definition>842004 - Disclosure - 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 roleURI="http://cxdo.com/role/RevenueTables" id="RevenueTables">
        <link:definition>842005 - Disclosure - 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 roleURI="http://cxdo.com/role/EarningsPerCommonShareTables" id="EarningsPerCommonShareTables">
        <link:definition>842006 - Disclosure - Earnings Per Common 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 roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables" id="TradeReceivablesAndAllowanceForCreditLossesTables">
        <link:definition>842007 - Disclosure - Trade Receivables and Allowance for Credit Losses (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 roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables" id="EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables">
        <link:definition>842008 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (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 roleURI="http://cxdo.com/role/PrepaidExpensesTables" id="PrepaidExpensesTables">
        <link:definition>842009 - Disclosure - Prepaid Expenses (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 roleURI="http://cxdo.com/role/PropertyAndEquipmentTables" id="PropertyAndEquipmentTables">
        <link:definition>842010 - Disclosure - Property and Equipment (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 roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillTables" id="IntangibleAssetsAndGoodwillTables">
        <link:definition>842011 - Disclosure - Intangible Assets and Goodwill (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 roleURI="http://cxdo.com/role/AccruedExpensesTables" id="AccruedExpensesTables">
        <link:definition>842012 - Disclosure - Accrued Expenses (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 roleURI="http://cxdo.com/role/NotesPayableTables" id="NotesPayableTables">
        <link:definition>842013 - Disclosure - Notes Payable (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 roleURI="http://cxdo.com/role/FairValueMeasurementsTables" id="FairValueMeasurementsTables">
        <link:definition>842014 - Disclosure - Fair Value Measurements (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 roleURI="http://cxdo.com/role/LeasesTables" id="LeasesTables">
        <link:definition>842015 - 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 roleURI="http://cxdo.com/role/SegmentsTables" id="SegmentsTables">
        <link:definition>842016 - Disclosure - Segments (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 roleURI="http://cxdo.com/role/SignificantAccountingPoliciesDetails" id="SignificantAccountingPoliciesDetails">
        <link:definition>842017 - Disclosure - Significant Accounting Policies (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 roleURI="http://cxdo.com/role/SignificantAccountingPoliciesDetails1" id="SignificantAccountingPoliciesDetails1">
        <link:definition>842018 - Disclosure - Significant Accounting Policies (Details 1)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative" id="SignificantAccountingPoliciesDetailsNarrative">
        <link:definition>842019 - Disclosure - Significant Accounting Policies (Details Narrative)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/RevenueDetails" id="RevenueDetails">
        <link:definition>842020 - Disclosure - 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 roleURI="http://cxdo.com/role/RevenueDetails1" id="RevenueDetails1">
        <link:definition>842021 - Disclosure - Revenue (Details 1)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/RevenueDetails2" id="RevenueDetails2">
        <link:definition>842022 - Disclosure - Revenue (Details 2)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/RevenueDetails3" id="RevenueDetails3">
        <link:definition>842023 - Disclosure - Revenue (Details 3)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/RevenueDetails4" id="RevenueDetails4">
        <link:definition>842024 - Disclosure - Revenue (Details 4)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/RevenueDetails5" id="RevenueDetails5">
        <link:definition>842025 - Disclosure - Revenue (Details 5)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/RevenueDetailsNarrative" id="RevenueDetailsNarrative">
        <link:definition>842026 - Disclosure - Revenue (Details Narrative)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/EarningsPerCommonShareDetails" id="EarningsPerCommonShareDetails">
        <link:definition>842027 - Disclosure - Earnings Per Common Share (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 roleURI="http://cxdo.com/role/EarningsPerCommonShareDetails1" id="EarningsPerCommonShareDetails1">
        <link:definition>842028 - Disclosure - Earnings Per Common Share (Details 1)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails" id="TradeReceivablesAndAllowanceForCreditLossesDetails">
        <link:definition>842029 - Disclosure - Trade Receivables and Allowance for Credit Losses (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 roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails1" id="TradeReceivablesAndAllowanceForCreditLossesDetails1">
        <link:definition>842030 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details 1)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative" id="TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative">
        <link:definition>842031 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details Narrative)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails" id="EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails">
        <link:definition>842032 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (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 roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1" id="EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1">
        <link:definition>842033 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 1)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2" id="EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2">
        <link:definition>842034 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 2)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3" id="EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3">
        <link:definition>842035 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 3)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4" id="EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4">
        <link:definition>842036 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 4)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative" id="EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative">
        <link:definition>842037 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details Narrative)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/PrepaidExpensesDetails" id="PrepaidExpensesDetails">
        <link:definition>842038 - Disclosure - Prepaid Expenses (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 roleURI="http://cxdo.com/role/PropertyAndEquipmentDetails" id="PropertyAndEquipmentDetails">
        <link:definition>842039 - Disclosure - Property and Equipment (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 roleURI="http://cxdo.com/role/PropertyAndEquipmentDetailsNarrative" id="PropertyAndEquipmentDetailsNarrative">
        <link:definition>842040 - Disclosure - Property and Equipment (Details Narrative)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails" id="IntangibleAssetsAndGoodwillDetails">
        <link:definition>842041 - Disclosure - Intangible Assets and Goodwill (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 roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1" id="IntangibleAssetsAndGoodwillDetails1">
        <link:definition>842042 - Disclosure - Intangible Assets and Goodwill (Details 1)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails2" id="IntangibleAssetsAndGoodwillDetails2">
        <link:definition>842043 - Disclosure - Intangible Assets and Goodwill (Details 2)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" id="IntangibleAssetsAndGoodwillDetailsNarrative">
        <link:definition>842044 - Disclosure - Intangible Assets and Goodwill (Details Narrative)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/AccruedExpensesDetails" id="AccruedExpensesDetails">
        <link:definition>842045 - Disclosure - Accrued Expenses (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 roleURI="http://cxdo.com/role/AccruedExpensesDetails1" id="AccruedExpensesDetails1">
        <link:definition>842046 - Disclosure - Accrued Expenses (Details 1)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/AccruedExpensesDetailsNarrative" id="AccruedExpensesDetailsNarrative">
        <link:definition>842047 - Disclosure - Accrued Expenses (Details Narrative)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/NotesPayableDetails" id="NotesPayableDetails">
        <link:definition>842048 - Disclosure - Notes Payable (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 roleURI="http://cxdo.com/role/NotesPayableDetails1" id="NotesPayableDetails1">
        <link:definition>842049 - Disclosure - Notes Payable (Details 1)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/NotesPayableDetailsNarrative" id="NotesPayableDetailsNarrative">
        <link:definition>842050 - Disclosure - Notes Payable (Details Narrative)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/LineOfCreditDetailsNarrative" id="LineOfCreditDetailsNarrative">
        <link:definition>842051 - Disclosure - Line of Credit (Details Narrative)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/FairValueMeasurementsDetails" id="FairValueMeasurementsDetails">
        <link:definition>842052 - Disclosure - Fair Value Measurements (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 roleURI="http://cxdo.com/role/IncomeTaxesDetailsNarrative" id="IncomeTaxesDetailsNarrative">
        <link:definition>842053 - Disclosure - Income Taxes (Details Narrative)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/LeasesDetails" id="LeasesDetails">
        <link:definition>842054 - Disclosure - 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 roleURI="http://cxdo.com/role/LeasesDetails1" id="LeasesDetails1">
        <link:definition>842055 - Disclosure - Leases (Details 1)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/LeasesDetails2" id="LeasesDetails2">
        <link:definition>842056 - Disclosure - Leases (Details 2)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/LeasesDetailsNarrative" id="LeasesDetailsNarrative">
        <link:definition>842057 - Disclosure - Leases (Details Narrative)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative" id="CommitmentsAndContingenciesDetailsNarrative">
        <link:definition>842058 - Disclosure - Commitments and Contingencies (Details Narrative)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://cxdo.com/role/SegmentReportingDetails" id="SegmentReportingDetails">
        <link:definition>842059 - Disclosure - Segment Reporting (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 roleURI="http://cxdo.com/role/SegmentReportingDetails1" id="SegmentReportingDetails1">
        <link:definition>842060 - Disclosure - Segment Reporting (Details 1)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:linkbaseRef xlink:type="simple" xlink:href="cxdo-20250331_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="cxdo-20250331_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="cxdo-20250331_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="cxdo-20250331_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
    </appinfo>
  </annotation>
  <import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
  <import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" />
  <import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" />
  <import namespace="http://xbrl.sec.gov/country/2024" schemaLocation="https://xbrl.sec.gov/country/2024/country-2024.xsd" />
  <import namespace="http://xbrl.sec.gov/currency/2024" schemaLocation="https://xbrl.sec.gov/currency/2024/currency-2024.xsd" />
  <import namespace="http://xbrl.sec.gov/dei/2024" schemaLocation="https://xbrl.sec.gov/dei/2024/dei-2024.xsd" />
  <import namespace="http://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd" />
  <import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd" />
  <import namespace="http://xbrl.sec.gov/exch/2024" schemaLocation="https://xbrl.sec.gov/exch/2024/exch-2024.xsd" />
  <import namespace="http://www.xbrl.org/2009/arcrole/fact-explanatoryFact" schemaLocation="http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd" />
  <import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd" />
  <import namespace="http://www.xbrl.org/2009/role/net" schemaLocation="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd" />
  <import namespace="http://xbrl.sec.gov/naics/2024" schemaLocation="https://xbrl.sec.gov/naics/2024/naics-2024.xsd" />
  <import namespace="http://xbrl.sec.gov/sic/2024" schemaLocation="https://xbrl.sec.gov/sic/2024/sic-2024.xsd" />
  <import namespace="http://fasb.org/srt-roles/2024" schemaLocation="https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd" />
  <import namespace="http://fasb.org/srt-types/2024" schemaLocation="https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd" />
  <import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd" />
  <import namespace="http://xbrl.sec.gov/stpr/2024" schemaLocation="https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd" />
  <import namespace="http://fasb.org/us-roles/2024" schemaLocation="https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd" />
  <import namespace="http://fasb.org/us-types/2024" schemaLocation="https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd" />
  <import namespace="http://fasb.org/srt/2024" schemaLocation="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd" />
  <import namespace="http://fasb.org/us-gaap/2024" schemaLocation="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd" />
  <import namespace="http://xbrl.sec.gov/ecd/2024" schemaLocation="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd" />
  <element id="cxdo_EquipmentFinancingReceivables" name="EquipmentFinancingReceivables" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_LongTermEquipmentFinancingReceivables" name="LongTermEquipmentFinancingReceivables" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AllowanceForEquipmentFinancingReceivable" name="AllowanceForEquipmentFinancingReceivable" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AllowanceForContractAssets" name="AllowanceForContractAssets" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AllowanceForLongTermEquipmentFinancingReceivable" name="AllowanceForLongTermEquipmentFinancingReceivable" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ServiceRevenue" name="ServiceRevenue" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_SoftwareSolutionsRevenue" name="SoftwareSolutionsRevenue" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ProductRevenue" name="ProductRevenue" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_CostOfServiceRevenue" name="CostOfServiceRevenue" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_CostOfSoftwareSolutionsRevenue" name="CostOfSoftwareSolutionsRevenue" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_CostOfProductRevenue" name="CostOfProductRevenue" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" name="TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_VestingOfRestrictedStockUnitsShares" name="VestingOfRestrictedStockUnitsShares" nillable="true" xbrli:periodType="duration" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_VestingOfRestrictedStockUnitsAmount" name="VestingOfRestrictedStockUnitsAmount" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AllowanceForCreditLosses" name="AllowanceForCreditLosses" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_IncreaseDecreaseInEquipmentFinancingReceivables" name="IncreaseDecreaseInEquipmentFinancingReceivables" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_IncreaseDecreaseInContractCosts" name="IncreaseDecreaseInContractCosts" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus" name="TaxesPaidOnTheNetSettlementOfStockOptionAndRsus" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_CashUsedDuringTheYearAbstract" name="CashUsedDuringTheYearAbstract" nillable="true" abstract="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock" name="EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_PrepaidExpensesDisclosureTextBlock" name="PrepaidExpensesDisclosureTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_LineOfCreditTextBlock" name="LineOfCreditTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_DescriptionOfBusinessPolicyTextBlock" name="DescriptionOfBusinessPolicyTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock" name="EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock" name="ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ContractCostsPolicyTextBlock" name="ContractCostsPolicyTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ContractLiabilitiesPolicyTextBlock" name="ContractLiabilitiesPolicyTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_RevenueRecognitionSalesOfServicesPolicyTextBlock" name="RevenueRecognitionSalesOfServicesPolicyTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_CostOfServiceRevenuePolicyTextBlock" name="CostOfServiceRevenuePolicyTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_CostOfSoftwareSolutionsRevenuePolicyTextBlock" name="CostOfSoftwareSolutionsRevenuePolicyTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_CostOfProductRevenuePolicyTextBlock" name="CostOfProductRevenuePolicyTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ContingentConsiderationPolicyTextBlock" name="ContingentConsiderationPolicyTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_RecentlyAdoptedAccountingPronouncementsPolicyTextBlock" name="RecentlyAdoptedAccountingPronouncementsPolicyTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" name="ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock" name="ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock" name="ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ScheduleOFtradeReceivablesTableTextBlock" name="ScheduleOFtradeReceivablesTableTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock" name="ScheduleOfAllowanceForCreditLossestableTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ScheduleOfAgingOfReceivablesTableTextBlock" name="ScheduleOfAgingOfReceivablesTableTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock" name="ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ScheduleOfPrepaidExpensesTableTextBlock" name="ScheduleOfPrepaidExpensesTableTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ScheduleOfGoodwillCarryingAmountTableTextBlock" name="ScheduleOfGoodwillCarryingAmountTableTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ScheduleOfLeaseTermAndDiscountTableTextBlock" name="ScheduleOfLeaseTermAndDiscountTableTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock" name="ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock" nillable="true" xbrli:periodType="duration" type="nonnum:textBlockItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives" name="PropertyPlantsAndEquipmentEstimatedUsefulLives" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife" name="FiniteLivedIntangibleAssetEstimatedUsefulLife" nillable="true" xbrli:periodType="duration" type="xbrli:durationItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_CapitalizedContractCost" name="CapitalizedContractCost" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_RevenueConcentrationRiskPercentage" name="RevenueConcentrationRiskPercentage" nillable="true" xbrli:periodType="duration" type="num:percentItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AccountsReceivableConcentrationRiskPercentage" name="AccountsReceivableConcentrationRiskPercentage" nillable="true" xbrli:periodType="duration" type="num:percentItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_DesktopServices" name="DesktopServices" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_InterestReceivedOnEquipmentFinancing" name="InterestReceivedOnEquipmentFinancing" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_TelecommunicationsServices" name="TelecommunicationsServices" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_FeesCommissionsAndOtherRecognizedOverTime" name="FeesCommissionsAndOtherRecognizedOverTime" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_OneTimeFeesCommissionsAndOther" name="OneTimeFeesCommissionsAndOther" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_SoftwareLicenses" name="SoftwareLicenses" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_SubscriptionMaintenanceAndSupport" name="SubscriptionMaintenanceAndSupport" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime" name="ProductsServicesAndFeesRecognizedAtAPointInTime" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ProductsServicesAndFeesTransferredOverTime" name="ProductsServicesAndFeesTransferredOverTime" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_RevenueRecognition" name="RevenueRecognition" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_RevenueRecognizedThatWasIncludedInContractLiabilityBalance" name="RevenueRecognizedThatWasIncludedInContractLiabilityBalance" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue" name="IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_TransferredToReceivablesFromContractAssetsRecognized" name="TransferredToReceivablesFromContractAssetsRecognized" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_IncreaseDueToAdditionalUnamortizedDiscounts" name="IncreaseDueToAdditionalUnamortizedDiscounts" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_DepositContractsAssetsGross" name="DepositContractsAssetsGross" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AllowanceforcreditlossesofContractAssets" name="AllowanceforcreditlossesofContractAssets" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AllowancesForCreditLossesOfContractAssets" name="AllowancesForCreditLossesOfContractAssets" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AllowanceForCreditLossesOfContractAssetsProvision" name="AllowanceForCreditLossesOfContractAssetsProvision" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs" name="FinancingReceivableAllowancesForCreditLossesWriteOffs" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_FinancingReceivableAllowanceForCreditLossesRecoveryOthers" name="FinancingReceivableAllowanceForCreditLossesRecoveryOthers" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AllowanceForCreditLossesOfContractAssets" name="AllowanceForCreditLossesOfContractAssets" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AllowanceForCreditLossesAsPercentOfGrossContractAssets" name="AllowanceForCreditLossesAsPercentOfGrossContractAssets" nillable="true" xbrli:periodType="instant" type="num:percentItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AllowanceForCreditLossesDescriptionOfPeriod" name="AllowanceForCreditLossesDescriptionOfPeriod" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_DilutiveEffectOfStockBasedAwards" name="DilutiveEffectOfStockBasedAwards" nillable="true" xbrli:periodType="duration" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_TradeReceivablesNet" name="TradeReceivablesNet" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AllowanceForLoansAndLeaseLossesWriteOffs" name="AllowanceForLoansAndLeaseLossesWriteOffs" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AccountsPercentageOfAccountsReceivable" name="AccountsPercentageOfAccountsReceivable" nillable="true" xbrli:periodType="instant" type="num:percentItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_LessAllowanceForCreditLosses" name="LessAllowanceForCreditLosses" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_FinancingReceivableAllowanceForCreditLossEquipment" name="FinancingReceivableAllowanceForCreditLossEquipment" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_LongTermInvestmentsAndReceivables" name="LongTermInvestmentsAndReceivables" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_GrossEquipmentFinancingReceivablesNexttwelvemonths" name="GrossEquipmentFinancingReceivablesNexttwelvemonths" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_GrossEquipmentFinancingReceivablesYeartwo" name="GrossEquipmentFinancingReceivablesYeartwo" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_GrossEquipmentFinancingReceivablesYearthree" name="GrossEquipmentFinancingReceivablesYearthree" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_GrossEquipmentFinancingReceivablesYearFour" name="GrossEquipmentFinancingReceivablesYearFour" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_GrossEquipmentFinancingReceivablesYearFive" name="GrossEquipmentFinancingReceivablesYearFive" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_GrossEquipmentFinancingReceivablesAfteryearfive" name="GrossEquipmentFinancingReceivablesAfteryearfive" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_EquipmentFinancingReceivablesDue" name="EquipmentFinancingReceivablesDue" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AgingOfReceivablesAmountDues" name="AgingOfReceivablesAmountDues" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AgingOfReceivablesDues" name="AgingOfReceivablesDues" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_TotalEquipmentFinancingReceivablesDue" name="TotalEquipmentFinancingReceivablesDue" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs" name="TotalEquipmentFinancingReceivablesDueGrossWriteOffs" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_PrepaidSoftwareServices" name="PrepaidSoftwareServices" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_PrepaidNasdaqListingFee" name="PrepaidNasdaqListingFee" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_PrepaidexpensesForUserGroupMeeting" name="PrepaidexpensesForUserGroupMeeting" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_GoodwillBeginningBalance" name="GoodwillBeginningBalance" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_GoodwillAdditions" name="GoodwillAdditions" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_GoodwillEndingBalance" name="GoodwillEndingBalance" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AmortizationOfIntangibleAssetsDevelopedTechnology" name="AmortizationOfIntangibleAssetsDevelopedTechnology" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AmortizationOfIntangibleAssetsCustomerRelationships" name="AmortizationOfIntangibleAssetsCustomerRelationships" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_DevelopedTechnologies" name="DevelopedTechnologies" nillable="true" xbrli:periodType="duration" type="xbrli:durationItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_TrademarksAndTradeNames" name="TrademarksAndTradeNames" nillable="true" xbrli:periodType="duration" type="xbrli:durationItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AmortizationOfIntangibleAssetsTrademarksAndTradeNames" name="AmortizationOfIntangibleAssetsTrademarksAndTradeNames" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AccruedAccountsPayable" name="AccruedAccountsPayable" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ProductWarrantyAccrual1" name="ProductWarrantyAccrual1" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_CloudComputingArrangements" name="CloudComputingArrangements" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_CreditCards" name="CreditCards" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ProductWarrantiesAccrualPeriodIncreaseDecrease" name="ProductWarrantiesAccrualPeriodIncreaseDecrease" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_NotesPayableRelatedPartyClassifiedCurrent" name="NotesPayableRelatedPartyClassifiedCurrent" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AgreementTerm" name="AgreementTerm" nillable="true" xbrli:periodType="duration" type="xbrli:durationItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_PromissoryNote" name="PromissoryNote" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_EquipmentFinancingReceivableFairValueDisclosure" name="EquipmentFinancingReceivableFairValueDisclosure" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_FinanceLeasesFairValueDisclosure" name="FinanceLeasesFairValueDisclosure" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_DeferredTaxAssetValuationAllowance" name="DeferredTaxAssetValuationAllowance" nillable="true" xbrli:balance="credit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_DeferredTaxesRealizableAmount" name="DeferredTaxesRealizableAmount" nillable="true" xbrli:balance="debit" xbrli:periodType="instant" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_IncomeTaxBenefitProvisions" name="IncomeTaxBenefitProvisions" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_OperatingLeaseWeightedAverageRemainingLeaseTerm" name="OperatingLeaseWeightedAverageRemainingLeaseTerm" nillable="true" xbrli:periodType="duration" type="xbrli:durationItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_FinanceLeaseWeightedAverageRemainingLeaseTerm" name="FinanceLeaseWeightedAverageRemainingLeaseTerm" nillable="true" xbrli:periodType="duration" type="xbrli:durationItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_OperatingCashFlowsFromOperatingLeases" name="OperatingCashFlowsFromOperatingLeases" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_OperatingCashFlowsFromFinanceLeases" name="OperatingCashFlowsFromFinanceLeases" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_FinancingCashFlowsFromFinanceLeases" name="FinancingCashFlowsFromFinanceLeases" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses" name="AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses" nillable="true" xbrli:balance="debit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_InterestRateFinanceLeases" name="InterestRateFinanceLeases" nillable="true" xbrli:periodType="duration" type="num:percentItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_DescriptionOfleaseExpiryDate" name="DescriptionOfleaseExpiryDate" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_IncrementalBorrowingRate" name="IncrementalBorrowingRate" nillable="true" xbrli:periodType="duration" type="num:percentItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_InterestExpenseOnMonthlyRentDepositLiabilitiesDescription" name="InterestExpenseOnMonthlyRentDepositLiabilitiesDescription" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_OperatingCostsAndExpencesDescription" name="OperatingCostsAndExpencesDescription" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_BonusDescription" name="BonusDescription" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_BonusAwardDescription" name="BonusAwardDescription" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_ServiceContractAmount" name="ServiceContractAmount" nillable="true" xbrli:balance="credit" xbrli:periodType="duration" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_DescriptionRelatedToNoncancellableServiceContractFutureAmount" name="DescriptionRelatedToNoncancellableServiceContractFutureAmount" nillable="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract" name="EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract" nillable="true" abstract="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_PropertyAndEquipmentAbstract" name="PropertyAndEquipmentAbstract" nillable="true" abstract="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
  <element id="cxdo_LineOfCreditAbstract" name="LineOfCreditAbstract" nillable="true" abstract="true" xbrli:periodType="duration" type="xbrli:stringItemType" substitutionGroup="xbrli:item" />
  <element name="ComputerSoftwareIntangibleAssetsMember" id="cxdo_ComputerSoftwareIntangibleAssetsMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="InternalUseComputerSoftwareMember" id="cxdo_InternalUseComputerSoftwareMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="CustomerRelationshipMember" id="cxdo_CustomerRelationshipMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="BottomMember" id="cxdo_BottomMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="TopMember" id="cxdo_TopMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="DevelopedTechnologiesMember" id="cxdo_DevelopedTechnologiesMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="TrademarkTradeNamesMember" id="cxdo_TrademarkTradeNamesMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="OtherCountriesMember" id="cxdo_OtherCountriesMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="AllowanceForCreditLossesMember" id="cxdo_AllowanceForCreditLossesMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="UnitedStateMember" id="cxdo_UnitedStateMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="TwoThousendTwentyTwoMember" id="cxdo_TwoThousendTwentyTwoMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="TwoThousendTwentyOneMember" id="cxdo_TwoThousendTwentyOneMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="TwoThousendTwentyFiveMember" id="cxdo_TwoThousendTwentyFiveMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="TwoThousendTwentyFourMember" id="cxdo_TwoThousendTwentyFourMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="PriorMember" id="cxdo_PriorMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="TwoThousendTwentyThreeMember" id="cxdo_TwoThousendTwentyThreeMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="AllegiantNetworksBusinessAcquisitionMember" id="cxdo_AllegiantNetworksBusinessAcquisitionMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="NovemberOneTwoThousandTwentyTwoMember" id="cxdo_NovemberOneTwoThousandTwentyTwoMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="OnFebruaryTwentySevenTwoThousandTwentyThreeMember" id="cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="TempeArizoneMember" id="cxdo_TempeArizoneMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="RestonVirginiaMember" id="cxdo_RestonVirginiaMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="SanDiegoCaliforniaMember" id="cxdo_SanDiegoCaliforniaMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="OverlandParkKansasMember" id="cxdo_OverlandParkKansasMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="MichiganLasVegasMember" id="cxdo_MichiganLasVegasMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="OtherOperatingLeasesMember" id="cxdo_OtherOperatingLeasesMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="OctoberTwoThousandTwentyFourMember" id="cxdo_OctoberTwoThousandTwentyFourMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="CloudTelecommunicationsServiceSegmentMember" id="cxdo_CloudTelecommunicationsServiceSegmentMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="TrademarkAndTradeNamesMember" id="cxdo_TrademarkAndTradeNamesMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="TotalacquiredintangibleassetsMember" id="cxdo_TotalacquiredintangibleassetsMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="SoftwareSolutionSegmentMember" id="cxdo_SoftwareSolutionSegmentMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="CarryingReportedAmountsFairValueDisclosureMember" id="cxdo_CarryingReportedAmountsFairValueDisclosureMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="EstimateOfFairValueFairValueDisclosuresMember" id="cxdo_EstimateOfFairValueFairValueDisclosuresMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="InternationalMember" id="cxdo_InternationalMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="CloudTelecommunicationsSegmentMember" id="cxdo_CloudTelecommunicationsSegmentMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="SoftwareSolutionsSegmentMember" id="cxdo_SoftwareSolutionsSegmentMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="ReportableSegmentMember" id="cxdo_ReportableSegmentMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="ContractAssetsMember" id="cxdo_ContractAssetsMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="ContractLiabilitiesMember" id="cxdo_ContractLiabilitiesMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="TelecommunicationsServicesMember" id="cxdo_TelecommunicationsServicesMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="DesktopDevicesMember" id="cxdo_DesktopDevicesMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="SoftwareSolutionsMember" id="cxdo_SoftwareSolutionsMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="OracleMemberMember" id="cxdo_OracleMemberMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="DecemberThirtyOneTwoThousandTwentyFourMember" id="cxdo_DecemberThirtyOneTwoThousandTwentyFourMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="BonusPlanMember" id="cxdo_BonusPlanMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="BoardOfDirectorsMember" id="cxdo_BoardOfDirectorsMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
  <element name="SoftwareSolutionsRevenueMember" id="cxdo_SoftwareSolutionsRevenueMember" nillable="true" xbrli:periodType="duration" type="nonnum:domainItemType" substitutionGroup="xbrli:item" />
</schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>7
<FILENAME>cxdo-20250331_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii" standalone="yes"?>
<!--XBRL Document Created with XBRLMaster-->
<!--Version: 2.3.08-->
<!--Based on XBRL 2.1-->
<!--Date of creation: 05/05/2025-->
<!--Software architectural design and coding: A'c Dharmapremananda Avt.-->
<!--Copyright (c) 2025 I-NET Business Solutions, Inc. All Rights Reserved.-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" roleURI="http://www.xbrl.org/2009/role/negatedLabel" />
  <link:roleRef xlink:type="simple" roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" />
  <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" />
  <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" />
  <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" />
  <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" />
  <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" roleURI="http://www.xbrl.org/2009/role/netLabel" />
  <link:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CoverAbstract" xlink:to="dei_CoverAbstract_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CoverAbstract_lbl" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityRegistrantName_lbl" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCentralIndexKey_lbl" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="dei_DocumentType" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentType_lbl" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentFlag_lbl" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntitySmallBusiness_lbl" xml:lang="en-US">Entity Small Business</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityShellCompany_lbl" xml:lang="en-US">Entity Shell Company</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCurrentReportingStatus_lbl" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodEndDate_lbl" xml:lang="en-US">Document Period End Date</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFilerCategory_lbl" xml:lang="en-US">Entity Filer Category</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalYearFocus_lbl" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xml:lang="en-US">Entity Common Stock Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentQuarterlyReport_lbl" xml:lang="en-US">Document Quarterly Report</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentTransitionReport_lbl" xml:lang="en-US">Document Transition Report</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFileNumber_lbl" xml:lang="en-US">Entity File Number</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xml:lang="en-US">Entity Incorporation State Country Code</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine1_lbl" xml:lang="en-US">Entity Address Address Line 1</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine2" xlink:label="dei_EntityAddressAddressLine2" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine2" xlink:to="dei_EntityAddressAddressLine2_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine2_lbl" xml:lang="en-US">Entity Address Address Line 2</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCityOrTown_lbl" xml:lang="en-US">Entity Address City Or Town</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressStateOrProvince_lbl" xml:lang="en-US">Entity Address State Or Province</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressPostalZipCode_lbl" xml:lang="en-US">Entity Address Postal Zip Code</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CityAreaCode_lbl" xml:lang="en-US">City Area Code</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_LocalPhoneNumber_lbl" xml:lang="en-US">Local Phone Number</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12bTitle_lbl" xml:lang="en-US">Security 12b Title</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract_lbl_456d02" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfFinancialPositionAbstract_lbl_456d02" xml:lang="en-US">Condensed Consolidated Balance Sheets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl_202458" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsAbstract_lbl_202458" xml:lang="en-US">Assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract_lbl_fa9072" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsCurrentAbstract_lbl_fa9072" xml:lang="en-US">Current assets:</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl_523c67" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl_523c67" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_lbl_28a4ac" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl_28a4ac" xml:lang="en-US">Trade receivables, net of allowance of $165 and $146, respectively</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_lbl_2f37f2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryNet_lbl_2f37f2" xml:lang="en-US">Inventories</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivables" xlink:label="cxdo_EquipmentFinancingReceivables" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_EquipmentFinancingReceivables" xlink:to="cxdo_EquipmentFinancingReceivables_lbl_3697a1" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_EquipmentFinancingReceivables_lbl_3697a1" xml:lang="en-US">Equipment financing receivables, net of allowance of $31 and $69, respectively</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="us-gaap_CapitalizedContractCostNet" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CapitalizedContractCostNet" xlink:to="us-gaap_CapitalizedContractCostNet_lbl_6d113f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CapitalizedContractCostNet_lbl_6d113f" xml:lang="en-US">Contract costs</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseCurrent" xlink:to="us-gaap_PrepaidExpenseCurrent_lbl_9f6394" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PrepaidExpenseCurrent_lbl_9f6394" xml:lang="en-US">Prepaid expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReceivable" xlink:label="us-gaap_IncomeTaxReceivable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReceivable" xlink:to="us-gaap_IncomeTaxReceivable_lbl_843638" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxReceivable_lbl_843638" xml:lang="en-US">Income tax receivable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsCurrent" xlink:label="us-gaap_OtherAssetsCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsCurrent" xlink:to="us-gaap_OtherAssetsCurrent_lbl_4e0b04" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherAssetsCurrent_lbl_4e0b04" xml:lang="en-US">Other current assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl_195f0e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_AssetsCurrent_lbl_195f0e" xml:lang="en-US">Total current assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl_12" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AssetsCurrent_lbl_12" xml:lang="en-US">[Assets, Current]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:label="us-gaap_ContractWithCustomerAssetNetNoncurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:to="us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl_291ab1" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerAssetNetNoncurrent_lbl_291ab1" xml:lang="en-US">Contract assets, net of allowance of $122 and $127, respectively</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_LongTermEquipmentFinancingReceivables" xlink:label="cxdo_LongTermEquipmentFinancingReceivables" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_LongTermEquipmentFinancingReceivables" xlink:to="cxdo_LongTermEquipmentFinancingReceivables_lbl_116797" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_LongTermEquipmentFinancingReceivables_lbl_116797" xml:lang="en-US">Long-term equipment financing receivables, net of allowance of $69 and $157, respectively</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl_6d76ff" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl_6d76ff" xml:lang="en-US">Property and equipment, net</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_lbl_84e68d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl_84e68d" xml:lang="en-US">Operating lease right-of-use assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl_2d6acf" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill_lbl_2d6acf" xml:lang="en-US">Intangible assets, net</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill_lbl_c379f0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Goodwill_lbl_c379f0" xml:lang="en-US">Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalizedContractCostNetNoncurrent" xlink:label="us-gaap_CapitalizedContractCostNetNoncurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CapitalizedContractCostNetNoncurrent" xlink:to="us-gaap_CapitalizedContractCostNetNoncurrent_lbl_a1fe9f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CapitalizedContractCostNetNoncurrent_lbl_a1fe9f" xml:lang="en-US">Contract costs, net of current portion</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent_lbl_15ccc1" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl_15ccc1" xml:lang="en-US">Other long-term assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_lbl_2d4c18" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_Assets_lbl_2d4c18" xml:lang="en-US">Total Assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_lbl_21" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Assets_lbl_21" xml:lang="en-US">[Assets]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl_10a43f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl_10a43f" xml:lang="en-US">Liabilities and Stockholders' Equity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract_lbl_8e4c8b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl_8e4c8b" xml:lang="en-US">Current liabilities:</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent_lbl_5bd5bb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsPayableCurrent_lbl_5bd5bb" xml:lang="en-US">Accounts payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="us-gaap_AccruedLiabilitiesCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedLiabilitiesCurrent" xlink:to="us-gaap_AccruedLiabilitiesCurrent_lbl_28c041" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedLiabilitiesCurrent_lbl_28c041" xml:lang="en-US">Accrued expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityCurrent" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent_lbl_119893" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent_lbl_119893" xml:lang="en-US">Finance leases</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NotesPayableCurrent" xlink:label="us-gaap_NotesPayableCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NotesPayableCurrent" xlink:to="us-gaap_NotesPayableCurrent_lbl_2c5bc2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NotesPayableCurrent_lbl_2c5bc2" xml:lang="en-US">Notes payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_lbl_2ed10d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl_2ed10d" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxesPayableCurrent" xlink:label="us-gaap_TaxesPayableCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TaxesPayableCurrent" xlink:to="us-gaap_TaxesPayableCurrent_lbl_4efea0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TaxesPayableCurrent_lbl_4efea0" xml:lang="en-US">Income tax payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityCurrent_lbl_5b190a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerLiabilityCurrent_lbl_5b190a" xml:lang="en-US">Contract liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl_16615b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LiabilitiesCurrent_lbl_16615b" xml:lang="en-US">Total current liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl_31" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesCurrent_lbl_31" xml:lang="en-US">[Liabilities, Current]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="us-gaap_ContractWithCustomerLiabilityNoncurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:to="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl_92d207" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerLiabilityNoncurrent_lbl_92d207" xml:lang="en-US">Contract liabilities, net of current portion</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrent_lbl_01cdf5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent_lbl_01cdf5" xml:lang="en-US">Finance leases, net of current portion</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermNotesPayable" xlink:label="us-gaap_LongTermNotesPayable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermNotesPayable" xlink:to="us-gaap_LongTermNotesPayable_lbl_6dcf5a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermNotesPayable_lbl_6dcf5a" xml:lang="en-US">Notes payable, net of current portion</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl_751eba" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl_751eba" xml:lang="en-US">Operating lease liabilities, net of current portion</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_lbl_b78032" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_Liabilities_lbl_b78032" xml:lang="en-US">Total liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_lbl_36" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Liabilities_lbl_36" xml:lang="en-US">[Liabilities]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract_lbl_09f09d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquityAbstract_lbl_09f09d" xml:lang="en-US">Stockholders' equity:</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockValue" xlink:to="us-gaap_PreferredStockValue_lbl_1252f6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockValue_lbl_1252f6" xml:lang="en-US">Preferred stock, par value $0.001 per share - authorized 5,000,000 shares; none issued</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl_ba2148" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockValue_lbl_ba2148" xml:lang="en-US">Common stock, par value $0.001 per share - authorized 50,000,000 shares, 28,990,386 shares issued and outstanding as of March 31, 2025 and 27,621,557 shares issued and outstanding as of December 31, 2024</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="us-gaap_AdditionalPaidInCapital" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapital" xlink:to="us-gaap_AdditionalPaidInCapital_lbl_83a1d3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdditionalPaidInCapital_lbl_83a1d3" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_lbl_a75752" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl_a75752" xml:lang="en-US">Accumulated deficit</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl_60e290" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_lbl_60e290" xml:lang="en-US">Accumulated other comprehensive income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl_9bf590" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_StockholdersEquity_lbl_9bf590" xml:lang="en-US">Total stockholders' equity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl_43" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockholdersEquity_lbl_43" xml:lang="en-US">[Equity, Attributable to Parent]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl_ad5e55" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl_ad5e55" xml:lang="en-US">Total Liabilities and Stockholders' Equity</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl_44" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl_44" xml:lang="en-US">[Liabilities and Equity]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl_73495f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_lbl_73495f" xml:lang="en-US">Allowance For Doubtful Accounts - Trade Receivables</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForEquipmentFinancingReceivable" xlink:label="cxdo_AllowanceForEquipmentFinancingReceivable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceForEquipmentFinancingReceivable" xlink:to="cxdo_AllowanceForEquipmentFinancingReceivable_lbl_50a47f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AllowanceForEquipmentFinancingReceivable_lbl_50a47f" xml:lang="en-US">Allowance For Equipment Financing Receivable</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForContractAssets" xlink:label="cxdo_AllowanceForContractAssets" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceForContractAssets" xlink:to="cxdo_AllowanceForContractAssets_lbl_44d31e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AllowanceForContractAssets_lbl_44d31e" xml:lang="en-US">Allowance For Contract Assets</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForLongTermEquipmentFinancingReceivable" xlink:label="cxdo_AllowanceForLongTermEquipmentFinancingReceivable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceForLongTermEquipmentFinancingReceivable" xlink:to="cxdo_AllowanceForLongTermEquipmentFinancingReceivable_lbl_754519" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AllowanceForLongTermEquipmentFinancingReceivable_lbl_754519" xml:lang="en-US">Allowance For Long Term Equipment Financing Receivable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare_lbl_67a074" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare_lbl_67a074" xml:lang="en-US">Preferred Stock, Par Value</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesAuthorized" xlink:to="us-gaap_PreferredStockSharesAuthorized_lbl_67666c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesAuthorized_lbl_67666c" xml:lang="en-US">Preferred Stock, Authorized</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesIssued" xlink:to="us-gaap_PreferredStockSharesIssued_lbl_f36d7b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PreferredStockSharesIssued_lbl_f36d7b" xml:lang="en-US">Preferred Stock, Issued</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare_lbl_9c87a3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_lbl_9c87a3" xml:lang="en-US">Common Stock, Par Value</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized_lbl_f1ea4c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl_f1ea4c" xml:lang="en-US">Common Stock, Authorized</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued_lbl_906148" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesIssued_lbl_906148" xml:lang="en-US">Common Stock, Issued</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl_2fff1c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl_2fff1c" xml:lang="en-US">Common Stock, Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract_lbl_50a1d5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementAbstract_lbl_50a1d5" xml:lang="en-US">Condensed Consolidated Statements of Operations (Unaudited)</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ServiceRevenue" xlink:label="cxdo_ServiceRevenue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ServiceRevenue" xlink:to="cxdo_ServiceRevenue_lbl_da03d8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ServiceRevenue_lbl_da03d8" xml:lang="en-US">Service revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionsRevenue" xlink:label="cxdo_SoftwareSolutionsRevenue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_SoftwareSolutionsRevenue" xlink:to="cxdo_SoftwareSolutionsRevenue_lbl_e3f912" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_SoftwareSolutionsRevenue_lbl_e3f912" xml:lang="en-US">Software solutions revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ProductRevenue" xlink:label="cxdo_ProductRevenue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ProductRevenue" xlink:to="cxdo_ProductRevenue_lbl_7d0651" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ProductRevenue_lbl_7d0651" xml:lang="en-US">Product revenue</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_Revenues_lbl_18f145" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_Revenues_lbl_18f145" xml:lang="en-US">Total revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Revenues" xlink:label="us-gaap_Revenues" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_Revenues_lbl_5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_Revenues_lbl_5" xml:lang="en-US">[Revenues]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="us-gaap_OperatingExpensesAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpensesAbstract_lbl_3c7c63" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingExpensesAbstract_lbl_3c7c63" xml:lang="en-US">Operating expenses:</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfServiceRevenue" xlink:label="cxdo_CostOfServiceRevenue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CostOfServiceRevenue" xlink:to="cxdo_CostOfServiceRevenue_lbl_9173ec" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CostOfServiceRevenue_lbl_9173ec" xml:lang="en-US">Cost of service revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfSoftwareSolutionsRevenue" xlink:label="cxdo_CostOfSoftwareSolutionsRevenue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CostOfSoftwareSolutionsRevenue" xlink:to="cxdo_CostOfSoftwareSolutionsRevenue_lbl_31d90d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CostOfSoftwareSolutionsRevenue_lbl_31d90d" xml:lang="en-US">Cost of software solutions revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfProductRevenue" xlink:label="cxdo_CostOfProductRevenue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CostOfProductRevenue" xlink:to="cxdo_CostOfProductRevenue_lbl_5094cb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CostOfProductRevenue_lbl_5094cb" xml:lang="en-US">Cost of product revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="us-gaap_SellingAndMarketingExpense" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingAndMarketingExpense" xlink:to="us-gaap_SellingAndMarketingExpense_lbl_90f927" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SellingAndMarketingExpense_lbl_90f927" xml:lang="en-US">Selling and marketing</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="us-gaap_GeneralAndAdministrativeExpense" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeneralAndAdministrativeExpense" xlink:to="us-gaap_GeneralAndAdministrativeExpense_lbl_503604" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GeneralAndAdministrativeExpense_lbl_503604" xml:lang="en-US">General and administrative</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="us-gaap_ResearchAndDevelopmentExpense" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentExpense" xlink:to="us-gaap_ResearchAndDevelopmentExpense_lbl_9ccb0c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ResearchAndDevelopmentExpense_lbl_9ccb0c" xml:lang="en-US">Research and development</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_lbl_3f21e3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_OperatingExpenses_lbl_3f21e3" xml:lang="en-US">Total operating expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpenses" xlink:label="us-gaap_OperatingExpenses" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_lbl_13" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingExpenses_lbl_13" xml:lang="en-US">[Operating Expenses]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl_4e0b40" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_OperatingIncomeLoss_lbl_4e0b40" xml:lang="en-US">Income/(loss) from operations</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl_14" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingIncomeLoss_lbl_14" xml:lang="en-US">[Operating Income (Loss)]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpenseAbstract" xlink:to="us-gaap_NonoperatingIncomeExpenseAbstract_lbl_c789ce" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NonoperatingIncomeExpenseAbstract_lbl_c789ce" xml:lang="en-US">Other income/(expense):</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeOther" xlink:label="us-gaap_InterestIncomeOther" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestIncomeOther" xlink:to="us-gaap_InterestIncomeOther_lbl_40a1fb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestIncomeOther_lbl_40a1fb" xml:lang="en-US">Interest income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpenseOther" xlink:to="us-gaap_InterestExpenseOther_lbl_c71790" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_InterestExpenseOther_lbl_c71790" xml:lang="en-US">Interest expense</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestExpenseOther" xlink:label="us-gaap_InterestExpenseOther" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpenseOther" xlink:to="us-gaap_InterestExpenseOther_lbl_17" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestExpenseOther_lbl_17" xml:lang="en-US">[Interest Expense, Other]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNonoperatingIncomeExpense" xlink:to="us-gaap_OtherNonoperatingIncomeExpense_lbl_635dcf" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherNonoperatingIncomeExpense_lbl_635dcf" xml:lang="en-US">Other income/(expense), net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense_lbl_19af07" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl_19af07" xml:lang="en-US">Total other income/(expense), net</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense_lbl_19" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl_19" xml:lang="en-US">[Nonoperating Income (Expense)]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl_86ff56" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl_86ff56" xml:lang="en-US">Income/(loss) before income tax</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl_20" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl_20" xml:lang="en-US">[Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl_b60f67" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl_b60f67" xml:lang="en-US">Income tax (provision)/benefit</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl_21" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl_21" xml:lang="en-US">[Income Tax Expense (Benefit)]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl_749001" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetIncomeLoss_lbl_749001" xml:lang="en-US">Net income/(loss)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl_22" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetIncomeLoss_lbl_22" xml:lang="en-US">[Net Income (Loss) Attributable to Parent]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="us-gaap_EarningsPerShareAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract_lbl_34bf97" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareAbstract_lbl_34bf97" xml:lang="en-US">Earnings per common share:</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_lbl_73daa5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareBasic_lbl_73daa5" xml:lang="en-US">Basic</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl_551234" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareDiluted_lbl_551234" xml:lang="en-US">Diluted</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_lbl_9d4464" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_lbl_9d4464" xml:lang="en-US">Weighted-average common shares outstanding:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl_884de6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl_884de6" xml:lang="en-US">Basic</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl_27" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl_27" xml:lang="en-US">[Weighted Average Number of Shares Outstanding, Basic]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl_7addf3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl_7addf3" xml:lang="en-US">Diluted</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl_28" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl_28" xml:lang="en-US">[Weighted Average Number of Shares Outstanding, Diluted]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_lbl_775554" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_lbl_775554" xml:lang="en-US">Condensed Consolidated Statements of Comprehensive Income(Loss) (Unaudited)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl_08b49a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NetIncomeLoss_lbl_08b49a" xml:lang="en-US">Net income/(loss)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxAbstract_lbl_08f9c8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxAbstract_lbl_08f9c8" xml:lang="en-US">Other comprehensive income/(loss), net of tax</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl_5ba845" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl_5ba845" xml:lang="en-US">Foreign currency translation gain/(loss)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTax_lbl_5c1884" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax_lbl_5c1884" xml:lang="en-US">Total other comprehensive income/(loss)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossNetOfTax_lbl_5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherComprehensiveIncomeLossNetOfTax_lbl_5" xml:lang="en-US">[Other Comprehensive Income (Loss), Net of Tax]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_lbl_9b01ee" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl_9b01ee" xml:lang="en-US">Comprehensive income/(loss)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_lbl_6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl_6" xml:lang="en-US">[Comprehensive Income (Loss), Net of Tax, Attributable to Parent]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract_lbl_d35f40" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract_lbl_d35f40" xml:lang="en-US">Consolidated Statements of Stockholders' Equity (Unaudited)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable_lbl_59300f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementTable_lbl_59300f" xml:lang="en-US">Statement [Table]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems_lbl_a10eb8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementLineItems_lbl_a10eb8" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis_lbl_5a7ee9" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementEquityComponentsAxis_lbl_5a7ee9" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember_lbl_d0d424" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommonStockMember_lbl_d0d424" xml:lang="en-US">Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember_lbl_746fe6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdditionalPaidInCapitalMember_lbl_746fe6" xml:lang="en-US">Additional Paid-In Capital</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl_7bb572" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember_lbl_7bb572" xml:lang="en-US">Accumulated other comprehensive Income</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl_b86bb0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RetainedEarningsMember_lbl_b86bb0" xml:lang="en-US">Accumulated Deficit</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesIssued" xlink:to="us-gaap_SharesIssued_lbl_6a0ca4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_SharesIssued_lbl_6a0ca4" xml:lang="en-US">Balance, shares</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesIssued" xlink:label="us-gaap_SharesIssued" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesIssued" xlink:to="us-gaap_SharesIssued_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SharesIssued_lbl_2" xml:lang="en-US">[Shares, Issued]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl_47d392" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_StockholdersEquity_lbl_47d392" xml:lang="en-US">Balance, amount</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl_a51e32" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl_a51e32" xml:lang="en-US">Share-based compensation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl_20d0b6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_lbl_20d0b6" xml:lang="en-US">Foreign currency translation adjustment, net of tax</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl_7f17dc" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_lbl_7f17dc" xml:lang="en-US">Issuance of common stock for exercise of stock options, shares</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:to="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl_9df041" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_lbl_9df041" xml:lang="en-US">Issuance of common stock for exercise of stock options, amount</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" xlink:label="cxdo_TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" xlink:to="cxdo_TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits_lbl_c2b69d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits_lbl_c2b69d" xml:lang="en-US">Taxes paid on the net settlement of stock options and RSUs</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl_fc4af4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_NetIncomeLoss_lbl_fc4af4" xml:lang="en-US">Net income/(loss)</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_VestingOfRestrictedStockUnitsShares" xlink:label="cxdo_VestingOfRestrictedStockUnitsShares" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_VestingOfRestrictedStockUnitsShares" xlink:to="cxdo_VestingOfRestrictedStockUnitsShares_lbl_d7c6e4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_VestingOfRestrictedStockUnitsShares_lbl_d7c6e4" xml:lang="en-US">Vesting of restricted stock units, shares</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_VestingOfRestrictedStockUnitsAmount" xlink:label="cxdo_VestingOfRestrictedStockUnitsAmount" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_VestingOfRestrictedStockUnitsAmount" xlink:to="cxdo_VestingOfRestrictedStockUnitsAmount_lbl_ab49a7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_VestingOfRestrictedStockUnitsAmount_lbl_ab49a7" xml:lang="en-US">Vesting of restricted stock units, amount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesIssued" xlink:to="us-gaap_SharesIssued_lbl_65ae46" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_SharesIssued_lbl_65ae46" xml:lang="en-US">Balance, shares</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl_49f840" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_StockholdersEquity_lbl_49f840" xml:lang="en-US">Balance, amount</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract_lbl_2a0099" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementOfCashFlowsAbstract_lbl_2a0099" xml:lang="en-US">Condensed Consolidated Statements of Cash Flows (Unaudited)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl_05f9b0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl_05f9b0" xml:lang="en-US">CASH FLOWS FROM OPERATING ACTIVITIES</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl_234f29" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl_234f29" xml:lang="en-US">Adjustments to reconcile net income/(loss) to net cash provided by/(used for) operating activities:</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationAndAmortization" xlink:label="us-gaap_DepreciationAndAmortization" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationAndAmortization" xlink:to="us-gaap_DepreciationAndAmortization_lbl_d98ddb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepreciationAndAmortization_lbl_d98ddb" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLosses" xlink:label="cxdo_AllowanceForCreditLosses" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceForCreditLosses" xlink:to="cxdo_AllowanceForCreditLosses_lbl_77aadf" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AllowanceForCreditLosses_lbl_77aadf" xml:lang="en-US">Allowance for credit losses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_lbl_7ba59a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ShareBasedCompensation_lbl_7ba59a" xml:lang="en-US">Share-based compensation</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_lbl_7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensation_lbl_7" xml:lang="en-US">[Share-Based Payment Arrangement, Noncash Expense]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNoncashIncomeExpense" xlink:to="us-gaap_OtherNoncashIncomeExpense_lbl_b3e3ed" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_OtherNoncashIncomeExpense_lbl_b3e3ed" xml:lang="en-US">Non-cash operating lease amortization</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="us-gaap_OtherNoncashIncomeExpense" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNoncashIncomeExpense" xlink:to="us-gaap_OtherNoncashIncomeExpense_lbl_8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherNoncashIncomeExpense_lbl_8" xml:lang="en-US">[Other Noncash Income (Expense)]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl_116bb5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_lbl_116bb5" xml:lang="en-US">Changes in assets and liabilities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl_9973a8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl_9973a8" xml:lang="en-US">Trade receivables</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl_10" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl_10" xml:lang="en-US">[Increase (Decrease) in Accounts Receivable]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_lbl_9a7585" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_lbl_9a7585" xml:lang="en-US">Contract assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_lbl_11" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerAsset_lbl_11" xml:lang="en-US">[Increase (Decrease) in Contract with Customer, Asset]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_IncreaseDecreaseInEquipmentFinancingReceivables" xlink:to="cxdo_IncreaseDecreaseInEquipmentFinancingReceivables_lbl_f3f209" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="cxdo_IncreaseDecreaseInEquipmentFinancingReceivables_lbl_f3f209" xml:lang="en-US">Equipment financing receivables</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncreaseDecreaseInEquipmentFinancingReceivables" xlink:label="cxdo_IncreaseDecreaseInEquipmentFinancingReceivables" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_IncreaseDecreaseInEquipmentFinancingReceivables" xlink:to="cxdo_IncreaseDecreaseInEquipmentFinancingReceivables_lbl_12" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_IncreaseDecreaseInEquipmentFinancingReceivables_lbl_12" xml:lang="en-US">[Equipment financing receivables]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl_8986dd" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl_8986dd" xml:lang="en-US">Inventories</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl_13" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl_13" xml:lang="en-US">[Increase (Decrease) in Inventories]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_IncreaseDecreaseInContractCosts" xlink:to="cxdo_IncreaseDecreaseInContractCosts_lbl_45fe39" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="cxdo_IncreaseDecreaseInContractCosts_lbl_45fe39" xml:lang="en-US">Contract costs</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncreaseDecreaseInContractCosts" xlink:label="cxdo_IncreaseDecreaseInContractCosts" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_IncreaseDecreaseInContractCosts" xlink:to="cxdo_IncreaseDecreaseInContractCosts_lbl_14" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_IncreaseDecreaseInContractCosts_lbl_14" xml:lang="en-US">[Contract costs]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl_0d3971" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl_0d3971" xml:lang="en-US">Prepaid expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl_15" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl_15" xml:lang="en-US">[Increase (Decrease) in Prepaid Expense]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_lbl_0d1c07" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_lbl_0d1c07" xml:lang="en-US">Income tax receivable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_lbl_16" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesReceivable_lbl_16" xml:lang="en-US">[Increase (Decrease) in Income Taxes Receivable]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl_838790" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl_838790" xml:lang="en-US">Other assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl_17" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets_lbl_17" xml:lang="en-US">[Increase (Decrease) in Other Operating Assets]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities_lbl_c23a90" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities_lbl_c23a90" xml:lang="en-US">Accounts payable and accrued expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl_048414" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl_048414" xml:lang="en-US">Income tax payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl_19" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable_lbl_19" xml:lang="en-US">[Increase (Decrease) in Income Taxes Payable]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl_9cc70b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl_9cc70b" xml:lang="en-US">Contract liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:to="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl_20" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncreaseDecreaseInContractWithCustomerLiability_lbl_20" xml:lang="en-US">[Increase (Decrease) in Contract with Customer, Liability]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl_90c239" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl_90c239" xml:lang="en-US">Net cash provided by/(used for) operating activities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl_21" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl_21" xml:lang="en-US">[Net Cash Provided by (Used in) Operating Activities]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl_548425" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl_548425" xml:lang="en-US">CASH FLOWS FROM INVESTING ACTIVITIES</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl_920b9f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl_920b9f" xml:lang="en-US">Purchase of property and equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl_5796f3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl_5796f3" xml:lang="en-US">Net cash provided by/(used for) investing activities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl_24" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl_24" xml:lang="en-US">[Net Cash Provided by (Used in) Investing Activities]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl_93188e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl_93188e" xml:lang="en-US">CASH FLOWS FROM FINANCING ACTIVITIES</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeasePrincipalPayments" xlink:to="us-gaap_FinanceLeasePrincipalPayments_lbl_d48687" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_FinanceLeasePrincipalPayments_lbl_d48687" xml:lang="en-US">Repayments made on finance leases</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="us-gaap_FinanceLeasePrincipalPayments" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeasePrincipalPayments" xlink:to="us-gaap_FinanceLeasePrincipalPayments_lbl_26" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeasePrincipalPayments_lbl_26" xml:lang="en-US">[Finance Lease, Principal Payments]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfNotesPayable" xlink:to="us-gaap_RepaymentsOfNotesPayable_lbl_2bd371" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_RepaymentsOfNotesPayable_lbl_2bd371" xml:lang="en-US">Repayments made on notes payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfNotesPayable" xlink:label="us-gaap_RepaymentsOfNotesPayable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfNotesPayable" xlink:to="us-gaap_RepaymentsOfNotesPayable_lbl_27" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RepaymentsOfNotesPayable_lbl_27" xml:lang="en-US">[Repayments of Notes Payable]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="us-gaap_ProceedsFromStockOptionsExercised" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromStockOptionsExercised" xlink:to="us-gaap_ProceedsFromStockOptionsExercised_lbl_f2e1ea" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProceedsFromStockOptionsExercised_lbl_f2e1ea" xml:lang="en-US">Proceeds from exercise of options</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus" xlink:to="cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus_lbl_51974f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus_lbl_51974f" xml:lang="en-US">Taxes paid on the net settlement of stock options and RSUs</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus" xlink:label="cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus" xlink:to="cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus_lbl_29" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus_lbl_29" xml:lang="en-US">[Taxes paid on the net settlement of stock options and RSUs]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl_099f03" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl_099f03" xml:lang="en-US">Net cash provided by/(used for) financing activities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl_30" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl_30" xml:lang="en-US">[Net Cash Provided by (Used in) Financing Activities]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl_41ecfd" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl_41ecfd" xml:lang="en-US">Effect of exchange rate changes on cash</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl_24b888" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl_24b888" xml:lang="en-US">NET INCREASE/(DECREASE) IN CASH AND CASH EQUIVALENTS</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl_32" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl_32" xml:lang="en-US">[Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl_e626e3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl_e626e3" xml:lang="en-US">CASH AND CASH EQUIVALENTS AT THE BEGINNING OF THE YEAR</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl_e03cdb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl_e03cdb" xml:lang="en-US">CASH AND CASH EQUIVALENTS AT THE END OF THE YEAR</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract_lbl_34106d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_lbl_34106d" xml:lang="en-US">Supplemental disclosure of cash flow information:</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CashUsedDuringTheYearAbstract" xlink:label="cxdo_CashUsedDuringTheYearAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CashUsedDuringTheYearAbstract" xlink:to="cxdo_CashUsedDuringTheYearAbstract_lbl_9e59e8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CashUsedDuringTheYearAbstract_lbl_9e59e8" xml:lang="en-US">Cash used during the year for:</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="us-gaap_IncomeTaxesPaidNet" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesPaidNet" xlink:to="us-gaap_IncomeTaxesPaidNet_lbl_0bb976" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxesPaidNet_lbl_0bb976" xml:lang="en-US">Income taxes, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPaidNet" xlink:to="us-gaap_InterestPaidNet_lbl_19bf71" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_InterestPaidNet_lbl_19bf71" xml:lang="en-US">Interest expense</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPaidNet" xlink:to="us-gaap_InterestPaidNet_lbl_38" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestPaidNet_lbl_38" xml:lang="en-US">[Interest Paid, Excluding Capitalized Interest, Operating Activities]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract_lbl_96ff94" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountingPoliciesAbstract_lbl_96ff94" xml:lang="en-US">Significant Accounting Policies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock_lbl_98518d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock_lbl_98518d" xml:lang="en-US">Significant Accounting Policies</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_SignificantAccountingPoliciesTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SignificantAccountingPoliciesTextBlock_lbl_2" xml:lang="en-US">Significant Accounting Policies [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuesAbstract" xlink:label="us-gaap_RevenuesAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenuesAbstract" xlink:to="us-gaap_RevenuesAbstract_lbl_ed9226" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenuesAbstract_lbl_ed9226" xml:lang="en-US">Revenue</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl_f0475d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl_f0475d" xml:lang="en-US">Revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl_2" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock_lbl_c327ab" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl_c327ab" xml:lang="en-US">Earnings Per Common Share</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EarningsPerShareTextBlock_lbl_2" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsAndNotesReceivableNetAbstract" xlink:label="us-gaap_AccountsAndNotesReceivableNetAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsAndNotesReceivableNetAbstract" xlink:to="us-gaap_AccountsAndNotesReceivableNetAbstract_lbl_3066c8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsAndNotesReceivableNetAbstract_lbl_3066c8" xml:lang="en-US">Trade Receivables and Allowance for Credit Losses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForCreditLossesTextBlock" xlink:to="us-gaap_AllowanceForCreditLossesTextBlock_lbl_5bf744" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AllowanceForCreditLossesTextBlock_lbl_5bf744" xml:lang="en-US">Trade Receivables and Allowance for Credit Losses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForCreditLossesTextBlock" xlink:label="us-gaap_AllowanceForCreditLossesTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForCreditLossesTextBlock" xlink:to="us-gaap_AllowanceForCreditLossesTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForCreditLossesTextBlock_lbl_2" xml:lang="en-US">Allowance for Credit Losses [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract" xlink:label="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract" xlink:to="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_lbl_52ed8c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_lbl_52ed8c" xml:lang="en-US">Equipment Financing Receivables and Allowance for Credit Losses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock" xlink:to="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock_lbl_d1af6f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock_lbl_d1af6f" xml:lang="en-US">Equipment Financing Receivables and Allowance for Credit Losses</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock" xlink:label="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock" xlink:to="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock_lbl_2" xml:lang="en-US">[Equipment Financing Receivables and Allowance for Credit Losses]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsAbstract" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsAbstract_lbl_aa468a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsAbstract_lbl_aa468a" xml:lang="en-US">Prepaid Expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_PrepaidExpensesDisclosureTextBlock" xlink:to="cxdo_PrepaidExpensesDisclosureTextBlock_lbl_2899e9" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_PrepaidExpensesDisclosureTextBlock_lbl_2899e9" xml:lang="en-US">Prepaid Expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PrepaidExpensesDisclosureTextBlock" xlink:label="cxdo_PrepaidExpensesDisclosureTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_PrepaidExpensesDisclosureTextBlock" xlink:to="cxdo_PrepaidExpensesDisclosureTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_PrepaidExpensesDisclosureTextBlock_lbl_2" xml:lang="en-US">[Prepaid Expenses]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PropertyAndEquipmentAbstract" xlink:label="cxdo_PropertyAndEquipmentAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_PropertyAndEquipmentAbstract" xlink:to="cxdo_PropertyAndEquipmentAbstract_lbl_2c2fa7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_PropertyAndEquipmentAbstract_lbl_2c2fa7" xml:lang="en-US">Property and Equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl_56de99" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl_56de99" xml:lang="en-US">Property and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock_lbl_2" xml:lang="en-US">Property, Plant and Equipment Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl_55b2ac" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl_55b2ac" xml:lang="en-US">Intangible Assets and Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_lbl_44de71" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_lbl_44de71" xml:lang="en-US">Intangible Assets And Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="us-gaap_PayablesAndAccrualsAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_PayablesAndAccrualsAbstract_lbl_192006" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PayablesAndAccrualsAbstract_lbl_192006" xml:lang="en-US">Accrued Expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:to="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_lbl_ffeeef" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_lbl_ffeeef" xml:lang="en-US">Accrued Expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:label="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:to="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_lbl_2" xml:lang="en-US">Accounts Payable, Accrued Liabilities, and Other Liabilities Disclosure, Current [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureAbstract_lbl_5c5f03" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtDisclosureAbstract_lbl_5c5f03" xml:lang="en-US">Notes Payable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock_lbl_c900d3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl_c900d3" xml:lang="en-US">Notes Payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl_2" xml:lang="en-US">Debt Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_LineOfCreditAbstract" xlink:label="cxdo_LineOfCreditAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_LineOfCreditAbstract" xlink:to="cxdo_LineOfCreditAbstract_lbl_dfcb8b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_LineOfCreditAbstract_lbl_dfcb8b" xml:lang="en-US">Line of Credit</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_LineOfCreditTextBlock" xlink:to="cxdo_LineOfCreditTextBlock_lbl_4a2e8a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_LineOfCreditTextBlock_lbl_4a2e8a" xml:lang="en-US">Line of Credit</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_LineOfCreditTextBlock" xlink:label="cxdo_LineOfCreditTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_LineOfCreditTextBlock" xlink:to="cxdo_LineOfCreditTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_LineOfCreditTextBlock_lbl_2" xml:lang="en-US">[Line of Credit]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="us-gaap_FairValueDisclosuresAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueDisclosuresAbstract" xlink:to="us-gaap_FairValueDisclosuresAbstract_lbl_83a6c1" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueDisclosuresAbstract_lbl_83a6c1" xml:lang="en-US">Fair Value Measurements</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueDisclosuresTextBlock" xlink:to="us-gaap_FairValueDisclosuresTextBlock_lbl_b03d88" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FairValueDisclosuresTextBlock_lbl_b03d88" xml:lang="en-US">Fair Value Measurements</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="us-gaap_FairValueDisclosuresTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueDisclosuresTextBlock" xlink:to="us-gaap_FairValueDisclosuresTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueDisclosuresTextBlock_lbl_2" xml:lang="en-US">Fair Value Disclosures [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureAbstract_lbl_a091bd" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_lbl_a091bd" xml:lang="en-US">Income Taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl_c633a4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl_c633a4" xml:lang="en-US">Income Taxes</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl_2" xml:lang="en-US">Income Tax Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="us-gaap_LeasesAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LeasesAbstract_lbl_17fc15" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LeasesAbstract_lbl_17fc15" xml:lang="en-US">Leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock_lbl_c97888" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock_lbl_c97888" xml:lang="en-US">Leases</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock_lbl_2" xml:lang="en-US">Lessee, Operating Leases [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl_976d6c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl_976d6c" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl_9e8e26" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl_9e8e26" xml:lang="en-US">Commitments And Contingencies</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_SegmentReportingAbstract_lbl_a2c00f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SegmentReportingAbstract_lbl_a2c00f" xml:lang="en-US">Segment Reporting</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock_lbl_6277b1" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock_lbl_6277b1" xml:lang="en-US">Segment Reporting</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock_lbl_2" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DescriptionOfBusinessPolicyTextBlock" xlink:label="cxdo_DescriptionOfBusinessPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DescriptionOfBusinessPolicyTextBlock" xlink:to="cxdo_DescriptionOfBusinessPolicyTextBlock_lbl_a02417" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_DescriptionOfBusinessPolicyTextBlock_lbl_a02417" xml:lang="en-US">Description of Business</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:to="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl_02406e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BasisOfAccountingPolicyPolicyTextBlock_lbl_02406e" xml:lang="en-US">Basis of Presentation</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:to="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_lbl_2bdc9d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_lbl_2bdc9d" xml:lang="en-US">Foreign Currency Translation</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl_f4502c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock_lbl_f4502c" xml:lang="en-US">Cash and Cash Equivalents</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:to="us-gaap_TradeAndOtherAccountsReceivablePolicy_lbl_231c06" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy_lbl_231c06" xml:lang="en-US">Trade Receivables and Allowance for Credit Losses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:to="us-gaap_TradeAndOtherAccountsReceivablePolicy_lbl_6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_TradeAndOtherAccountsReceivablePolicy_lbl_6" xml:lang="en-US">Accounts Receivable [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock" xlink:to="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock_lbl_abaf56" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock_lbl_abaf56" xml:lang="en-US">Equipment Financing Receivables and Allowance for Credit Losses</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock" xlink:label="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock" xlink:to="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock_lbl_7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock_lbl_7" xml:lang="en-US">[Equipment Financing Receivables and Allowance for Credit Losses 1]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock" xlink:label="cxdo_ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock" xlink:to="cxdo_ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock_lbl_561115" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock_lbl_561115" xml:lang="en-US">Contract Assets and Allowance for Credit Losses</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContractCostsPolicyTextBlock" xlink:label="cxdo_ContractCostsPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ContractCostsPolicyTextBlock" xlink:to="cxdo_ContractCostsPolicyTextBlock_lbl_f92f1f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ContractCostsPolicyTextBlock_lbl_f92f1f" xml:lang="en-US">Contract Costs</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="us-gaap_InventoryPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock_lbl_739879" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InventoryPolicyTextBlock_lbl_739879" xml:lang="en-US">Inventory</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl_def3ab" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl_def3ab" xml:lang="en-US">Property and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl_11" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock_lbl_11" xml:lang="en-US">Property, Plant and Equipment, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock" xlink:label="us-gaap_BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock" xlink:to="us-gaap_BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock_lbl_51078a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock_lbl_51078a" xml:lang="en-US">Asset Acquisitions</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationsPolicy" xlink:label="us-gaap_BusinessCombinationsPolicy" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationsPolicy" xlink:to="us-gaap_BusinessCombinationsPolicy_lbl_b3e797" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationsPolicy_lbl_b3e797" xml:lang="en-US">Business Acquisition</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:to="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy_lbl_0dfb99" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy_lbl_0dfb99" xml:lang="en-US">Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:label="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:to="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy_lbl_14" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy_lbl_14" xml:lang="en-US">Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" xlink:label="us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" xlink:to="us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy_lbl_fcd5ee" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy_lbl_fcd5ee" xml:lang="en-US">Intangible Assets</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContractLiabilitiesPolicyTextBlock" xlink:label="cxdo_ContractLiabilitiesPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ContractLiabilitiesPolicyTextBlock" xlink:to="cxdo_ContractLiabilitiesPolicyTextBlock_lbl_140386" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ContractLiabilitiesPolicyTextBlock_lbl_140386" xml:lang="en-US">Contract Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UseOfEstimates" xlink:label="us-gaap_UseOfEstimates" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_UseOfEstimates" xlink:to="us-gaap_UseOfEstimates_lbl_f14d08" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_UseOfEstimates_lbl_f14d08" xml:lang="en-US">Use of Estimates</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesPolicyTextBlock_lbl_a80e02" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CommitmentsAndContingenciesPolicyTextBlock_lbl_a80e02" xml:lang="en-US">Contingencies</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RevenueRecognitionSalesOfServicesPolicyTextBlock" xlink:label="cxdo_RevenueRecognitionSalesOfServicesPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_RevenueRecognitionSalesOfServicesPolicyTextBlock" xlink:to="cxdo_RevenueRecognitionSalesOfServicesPolicyTextBlock_lbl_709eac" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_RevenueRecognitionSalesOfServicesPolicyTextBlock_lbl_709eac" xml:lang="en-US">Service, Software Solutions and Product Revenue Recognition</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfServiceRevenuePolicyTextBlock" xlink:label="cxdo_CostOfServiceRevenuePolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CostOfServiceRevenuePolicyTextBlock" xlink:to="cxdo_CostOfServiceRevenuePolicyTextBlock_lbl_4f2a83" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CostOfServiceRevenuePolicyTextBlock_lbl_4f2a83" xml:lang="en-US">Cost of Service Revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfSoftwareSolutionsRevenuePolicyTextBlock" xlink:label="cxdo_CostOfSoftwareSolutionsRevenuePolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CostOfSoftwareSolutionsRevenuePolicyTextBlock" xlink:to="cxdo_CostOfSoftwareSolutionsRevenuePolicyTextBlock_lbl_f2187a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CostOfSoftwareSolutionsRevenuePolicyTextBlock_lbl_f2187a" xml:lang="en-US">Cost of Software Solutions Revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfProductRevenuePolicyTextBlock" xlink:label="cxdo_CostOfProductRevenuePolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CostOfProductRevenuePolicyTextBlock" xlink:to="cxdo_CostOfProductRevenuePolicyTextBlock_lbl_341e2d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CostOfProductRevenuePolicyTextBlock_lbl_341e2d" xml:lang="en-US">Cost of Product Revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyPolicy" xlink:label="us-gaap_StandardProductWarrantyPolicy" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyPolicy" xlink:to="us-gaap_StandardProductWarrantyPolicy_lbl_b9c048" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StandardProductWarrantyPolicy_lbl_b9c048" xml:lang="en-US">Product Warranty</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContingentConsiderationPolicyTextBlock" xlink:label="cxdo_ContingentConsiderationPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ContingentConsiderationPolicyTextBlock" xlink:to="cxdo_ContingentConsiderationPolicyTextBlock_lbl_9fa5ab" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ContingentConsiderationPolicyTextBlock_lbl_9fa5ab" xml:lang="en-US">Contingent Consideration</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="us-gaap_ResearchAndDevelopmentExpensePolicy" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:to="us-gaap_ResearchAndDevelopmentExpensePolicy_lbl_bbccf4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ResearchAndDevelopmentExpensePolicy_lbl_bbccf4" xml:lang="en-US">Research and Development</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:to="us-gaap_FairValueMeasurementPolicyPolicyTextBlock_lbl_86a3e2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FairValueMeasurementPolicyPolicyTextBlock_lbl_86a3e2" xml:lang="en-US">Fair Value Measurements</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:label="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:to="us-gaap_FairValueMeasurementPolicyPolicyTextBlock_lbl_26" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueMeasurementPolicyPolicyTextBlock_lbl_26" xml:lang="en-US">Fair Value Measurement, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeasesPolicyTextBlock" xlink:label="us-gaap_LesseeLeasesPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeLeasesPolicyTextBlock" xlink:to="us-gaap_LesseeLeasesPolicyTextBlock_lbl_afe201" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeLeasesPolicyTextBlock_lbl_afe201" xml:lang="en-US">Lease Obligations</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtPolicyTextBlock" xlink:to="us-gaap_DebtPolicyTextBlock_lbl_5cdca9" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DebtPolicyTextBlock_lbl_5cdca9" xml:lang="en-US">Notes Payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtPolicyTextBlock" xlink:label="us-gaap_DebtPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtPolicyTextBlock" xlink:to="us-gaap_DebtPolicyTextBlock_lbl_28" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtPolicyTextBlock_lbl_28" xml:lang="en-US">Debt, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxPolicyTextBlock" xlink:to="us-gaap_IncomeTaxPolicyTextBlock_lbl_a7033a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeTaxPolicyTextBlock_lbl_a7033a" xml:lang="en-US">Income Taxes</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxPolicyTextBlock" xlink:to="us-gaap_IncomeTaxPolicyTextBlock_lbl_29" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxPolicyTextBlock_lbl_29" xml:lang="en-US">Income Tax, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl_cb306c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl_cb306c" xml:lang="en-US">Stock-Based Compensation</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingPolicyPolicyTextBlock" xlink:label="us-gaap_SegmentReportingPolicyPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingPolicyPolicyTextBlock" xlink:to="us-gaap_SegmentReportingPolicyPolicyTextBlock_lbl_4236c5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SegmentReportingPolicyPolicyTextBlock_lbl_4236c5" xml:lang="en-US">Operating Segments</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MajorCustomersPolicyPolicyTextBlock" xlink:label="us-gaap_MajorCustomersPolicyPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_MajorCustomersPolicyPolicyTextBlock" xlink:to="us-gaap_MajorCustomersPolicyPolicyTextBlock_lbl_e9cd7d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_MajorCustomersPolicyPolicyTextBlock_lbl_e9cd7d" xml:lang="en-US">Significant Customers</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RecentlyAdoptedAccountingPronouncementsPolicyTextBlock" xlink:label="cxdo_RecentlyAdoptedAccountingPronouncementsPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_RecentlyAdoptedAccountingPronouncementsPolicyTextBlock" xlink:to="cxdo_RecentlyAdoptedAccountingPronouncementsPolicyTextBlock_lbl_7b1f09" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_RecentlyAdoptedAccountingPronouncementsPolicyTextBlock_lbl_7b1f09" xml:lang="en-US">Recently Adopted Accounting Pronouncements</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl_5eb8e7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_lbl_5eb8e7" xml:lang="en-US">Recently Issued Accounting Pronouncements</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" xlink:label="cxdo_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" xlink:to="cxdo_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock_lbl_63d08e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock_lbl_63d08e" xml:lang="en-US">Estimated useful life of property and equipment</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock" xlink:label="cxdo_ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock" xlink:to="cxdo_ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock_lbl_7e6e40" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock_lbl_7e6e40" xml:lang="en-US">Estimated useful life of Intangible assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl_c4f3e1" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock_lbl_c4f3e1" xml:lang="en-US">Disaggregation of revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:to="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl_3c4bc7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock_lbl_3c4bc7" xml:lang="en-US">Contract balances</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="cxdo_ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:to="cxdo_ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock_lbl_f6308b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock_lbl_f6308b" xml:lang="en-US">Significant changes in the contract assets and liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock" xlink:label="us-gaap_ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock" xlink:to="us-gaap_ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock_lbl_7d41c2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock_lbl_7d41c2" xml:lang="en-US">Contract assets allowance for credit losses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SecuritiesBorrowedAllowanceForCreditLossTableTextBlock" xlink:label="us-gaap_SecuritiesBorrowedAllowanceForCreditLossTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SecuritiesBorrowedAllowanceForCreditLossTableTextBlock" xlink:to="us-gaap_SecuritiesBorrowedAllowanceForCreditLossTableTextBlock_lbl_aa6260" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SecuritiesBorrowedAllowanceForCreditLossTableTextBlock_lbl_aa6260" xml:lang="en-US">Schedule of allowance for credit losses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:to="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock_lbl_9ac8bb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock_lbl_9ac8bb" xml:lang="en-US">Performance obligations</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl_082bf2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl_082bf2" xml:lang="en-US">Schedule of basic and diluted net income per common share</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl_23a80a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl_23a80a" xml:lang="en-US">Schedule of common stock not included in the computation of diluted income per share</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOFtradeReceivablesTableTextBlock" xlink:label="cxdo_ScheduleOFtradeReceivablesTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ScheduleOFtradeReceivablesTableTextBlock" xlink:to="cxdo_ScheduleOFtradeReceivablesTableTextBlock_lbl_cee170" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ScheduleOFtradeReceivablesTableTextBlock_lbl_cee170" xml:lang="en-US">Schedule of trade receivables balance consists of traditional trade receivables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock" xlink:to="cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock_lbl_51dd28" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock_lbl_51dd28" xml:lang="en-US">Schedule of allowance for credit losses</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock" xlink:label="cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock" xlink:to="cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock_lbl_3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock_lbl_3" xml:lang="en-US">[Schedule of allowance for credit losses]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock" xlink:label="us-gaap_ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock" xlink:to="us-gaap_ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock_lbl_27007a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock_lbl_27007a" xml:lang="en-US">Schedule of financing receivables</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock" xlink:label="us-gaap_SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock" xlink:to="us-gaap_SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock_lbl_d4d2b9" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock_lbl_d4d2b9" xml:lang="en-US">Schedule of financing receivables future contractual maturities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock" xlink:label="us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock" xlink:to="us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock_lbl_bec399" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock_lbl_bec399" xml:lang="en-US">Schedule of financing receivables Allowance for Credit Losses</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfAgingOfReceivablesTableTextBlock" xlink:label="cxdo_ScheduleOfAgingOfReceivablesTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ScheduleOfAgingOfReceivablesTableTextBlock" xlink:to="cxdo_ScheduleOfAgingOfReceivablesTableTextBlock_lbl_34c763" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ScheduleOfAgingOfReceivablesTableTextBlock_lbl_34c763" xml:lang="en-US">Schedule of Aging of Receivables</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock" xlink:label="cxdo_ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock" xlink:to="cxdo_ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock_lbl_3a511d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock_lbl_3a511d" xml:lang="en-US">Schedule of financing receivables and current period gross write offs</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfPrepaidExpensesTableTextBlock" xlink:label="cxdo_ScheduleOfPrepaidExpensesTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ScheduleOfPrepaidExpensesTableTextBlock" xlink:to="cxdo_ScheduleOfPrepaidExpensesTableTextBlock_lbl_439cf8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ScheduleOfPrepaidExpensesTableTextBlock_lbl_439cf8" xml:lang="en-US">Schedule of Prepaid expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl_6c3e1c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentTextBlock_lbl_6c3e1c" xml:lang="en-US">Schedule of Property And Equipment</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl_59ff13" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_lbl_59ff13" xml:lang="en-US">Schedule of intangible assets</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_lbl_b325d4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_lbl_b325d4" xml:lang="en-US">Sammary of amortization of intangible assets</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfGoodwillCarryingAmountTableTextBlock" xlink:label="cxdo_ScheduleOfGoodwillCarryingAmountTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ScheduleOfGoodwillCarryingAmountTableTextBlock" xlink:to="cxdo_ScheduleOfGoodwillCarryingAmountTableTextBlock_lbl_99484d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ScheduleOfGoodwillCarryingAmountTableTextBlock_lbl_99484d" xml:lang="en-US">Schedule of goodwill carrying amount</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:to="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_lbl_dc952d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock_lbl_dc952d" xml:lang="en-US">Schedule of accrued expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:to="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_lbl_7e5a2f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_lbl_7e5a2f" xml:lang="en-US">Schedule of product warranty liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfDebtTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDebtTableTextBlock" xlink:to="us-gaap_ScheduleOfDebtTableTextBlock_lbl_3bfa5e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfDebtTableTextBlock_lbl_3bfa5e" xml:lang="en-US">Schedule of notes payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:to="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl_ee4bb9" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock_lbl_ee4bb9" xml:lang="en-US">Schedule of principal payments of notes payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByBalanceSheetGroupingTextBlock" xlink:label="us-gaap_FairValueByBalanceSheetGroupingTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueByBalanceSheetGroupingTextBlock" xlink:to="us-gaap_FairValueByBalanceSheetGroupingTextBlock_lbl_6787fd" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FairValueByBalanceSheetGroupingTextBlock_lbl_6787fd" xml:lang="en-US">Fair value of financial instruments</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl_1d7baa" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl_1d7baa" xml:lang="en-US">Maturity of operating lease and finance lease liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfLeaseTermAndDiscountTableTextBlock" xlink:label="cxdo_ScheduleOfLeaseTermAndDiscountTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ScheduleOfLeaseTermAndDiscountTableTextBlock" xlink:to="cxdo_ScheduleOfLeaseTermAndDiscountTableTextBlock_lbl_3aa91c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ScheduleOfLeaseTermAndDiscountTableTextBlock_lbl_3aa91c" xml:lang="en-US">Schedule of lease term and discount rate</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock" xlink:label="cxdo_ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock" xlink:to="cxdo_ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock_lbl_7a94af" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock_lbl_7a94af" xml:lang="en-US">Schedule of cash paid for amounts included in the measurement of lease liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink:label="us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink:to="us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_lbl_a107c3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_lbl_a107c3" xml:lang="en-US">Information on reportable segments and reconciliation to condensed consolidated net (loss) income</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:label="us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:to="us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_lbl_9bd570" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_lbl_9bd570" xml:lang="en-US">Schedule of Revenue by geography</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl_9a5e18" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis_lbl_9a5e18" xml:lang="en-US">Long-Lived Tangible Asset [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="us-gaap_FurnitureAndFixturesMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FurnitureAndFixturesMember" xlink:to="us-gaap_FurnitureAndFixturesMember_lbl_114fc9" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FurnitureAndFixturesMember_lbl_114fc9" xml:lang="en-US">Furniture and Fixtures [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OfficeEquipmentMember" xlink:label="us-gaap_OfficeEquipmentMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OfficeEquipmentMember" xlink:to="us-gaap_OfficeEquipmentMember_lbl_dabd67" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OfficeEquipmentMember_lbl_dabd67" xml:lang="en-US">Computer and Office Equipment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ComputerSoftwareIntangibleAssetsMember" xlink:label="cxdo_ComputerSoftwareIntangibleAssetsMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ComputerSoftwareIntangibleAssetsMember" xlink:to="cxdo_ComputerSoftwareIntangibleAssetsMember_lbl_0e192b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ComputerSoftwareIntangibleAssetsMember_lbl_0e192b" xml:lang="en-US">Computer Software [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InternalUseComputerSoftwareMember" xlink:label="cxdo_InternalUseComputerSoftwareMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_InternalUseComputerSoftwareMember" xlink:to="cxdo_InternalUseComputerSoftwareMember_lbl_fd3083" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_InternalUseComputerSoftwareMember_lbl_fd3083" xml:lang="en-US">Internal-use Software [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="us-gaap_LeaseholdImprovementsMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseholdImprovementsMember" xlink:to="us-gaap_LeaseholdImprovementsMember_lbl_353ef4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LeaseholdImprovementsMember_lbl_353ef4" xml:lang="en-US">Leasehold Improvements [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VehiclesMember" xlink:label="us-gaap_VehiclesMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VehiclesMember" xlink:to="us-gaap_VehiclesMember_lbl_fb494b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_VehiclesMember_lbl_fb494b" xml:lang="en-US">Vehicles [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives" xlink:label="cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives" xlink:to="cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives_lbl_2dd470" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives_lbl_2dd470" xml:lang="en-US">Depreciable lives</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameAxis_lbl_5845a0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PlanNameAxis_lbl_5845a0" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl_401fdd" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl_401fdd" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CustomerRelationshipMember" xlink:label="cxdo_CustomerRelationshipMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CustomerRelationshipMember" xlink:to="cxdo_CustomerRelationshipMember_lbl_139693" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CustomerRelationshipMember_lbl_139693" xml:lang="en-US">Customer Relationship [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BottomMember" xlink:label="cxdo_BottomMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_BottomMember" xlink:to="cxdo_BottomMember_lbl_18de50" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_BottomMember_lbl_18de50" xml:lang="en-US">Bottom [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TopMember" xlink:label="cxdo_TopMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TopMember" xlink:to="cxdo_TopMember_lbl_a48ebb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TopMember_lbl_a48ebb" xml:lang="en-US">Top [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DevelopedTechnologiesMember" xlink:label="cxdo_DevelopedTechnologiesMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DevelopedTechnologiesMember" xlink:to="cxdo_DevelopedTechnologiesMember_lbl_7fa94d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_DevelopedTechnologiesMember_lbl_7fa94d" xml:lang="en-US">Developed Technologies [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TrademarkTradeNamesMember" xlink:label="cxdo_TrademarkTradeNamesMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TrademarkTradeNamesMember" xlink:to="cxdo_TrademarkTradeNamesMember_lbl_b72604" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TrademarkTradeNamesMember_lbl_b72604" xml:lang="en-US">Trademark and Trade Names [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife" xlink:label="cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife" xlink:to="cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife_lbl_c2aa3a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife_lbl_c2aa3a" xml:lang="en-US">Estimated useful lives</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicDistributionAxis" xlink:label="us-gaap_GeographicDistributionAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeographicDistributionAxis" xlink:to="us-gaap_GeographicDistributionAxis_lbl_a9030d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GeographicDistributionAxis_lbl_a9030d" xml:lang="en-US">Geographic Distribution [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OtherCountriesMember" xlink:label="cxdo_OtherCountriesMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_OtherCountriesMember" xlink:to="cxdo_OtherCountriesMember_lbl_e1b5cb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_OtherCountriesMember_lbl_e1b5cb" xml:lang="en-US">Other Countries [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:to="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_lbl_2364f6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_lbl_2364f6" xml:lang="en-US">Foreign currency translation gains/(losses)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherSellingAndMarketingExpense" xlink:label="us-gaap_OtherSellingAndMarketingExpense" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherSellingAndMarketingExpense" xlink:to="us-gaap_OtherSellingAndMarketingExpense_lbl_fa38e3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherSellingAndMarketingExpense_lbl_fa38e3" xml:lang="en-US">Selling and marketing expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashEquivalentsAtCarryingValue_lbl_9abd67" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_CashEquivalentsAtCarryingValue_lbl_9abd67" xml:lang="en-US">Cash and Cash Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashEquivalentsAtCarryingValue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashEquivalentsAtCarryingValue_lbl_4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CashEquivalentsAtCarryingValue_lbl_4" xml:lang="en-US">[Cash Equivalents, at Carrying Value]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CapitalizedContractCost" xlink:label="cxdo_CapitalizedContractCost" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CapitalizedContractCost" xlink:to="cxdo_CapitalizedContractCost_lbl_137a28" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CapitalizedContractCost_lbl_137a28" xml:lang="en-US">Capitalized contract costs</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_lbl_e55f85" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_lbl_e55f85" xml:lang="en-US">Change in the valuation allowance for net deferred income tax assets</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RevenueConcentrationRiskPercentage" xlink:label="cxdo_RevenueConcentrationRiskPercentage" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_RevenueConcentrationRiskPercentage" xlink:to="cxdo_RevenueConcentrationRiskPercentage_lbl_ffcc9b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_RevenueConcentrationRiskPercentage_lbl_ffcc9b" xml:lang="en-US">Revenue percentage generated from customers</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AccountsReceivableConcentrationRiskPercentage" xlink:label="cxdo_AccountsReceivableConcentrationRiskPercentage" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AccountsReceivableConcentrationRiskPercentage" xlink:to="cxdo_AccountsReceivableConcentrationRiskPercentage_lbl_02c762" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AccountsReceivableConcentrationRiskPercentage_lbl_02c762" xml:lang="en-US">Accounts receivable percentage generated from customers</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="us-gaap_StatementBusinessSegmentsAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementBusinessSegmentsAxis" xlink:to="us-gaap_StatementBusinessSegmentsAxis_lbl_af9542" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StatementBusinessSegmentsAxis_lbl_af9542" xml:lang="en-US">Segments [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CloudTelecommunicationsSegmentMember" xlink:label="cxdo_CloudTelecommunicationsSegmentMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CloudTelecommunicationsSegmentMember" xlink:to="cxdo_CloudTelecommunicationsSegmentMember_lbl_5b22a4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CloudTelecommunicationsSegmentMember_lbl_5b22a4" xml:lang="en-US">Cloud Telecommunications Segment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionsSegmentMember" xlink:label="cxdo_SoftwareSolutionsSegmentMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_SoftwareSolutionsSegmentMember" xlink:to="cxdo_SoftwareSolutionsSegmentMember_lbl_f1df63" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_SoftwareSolutionsSegmentMember_lbl_f1df63" xml:lang="en-US">Software Solutions Segment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ReportableSegmentMember" xlink:label="cxdo_ReportableSegmentMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ReportableSegmentMember" xlink:to="cxdo_ReportableSegmentMember_lbl_c57c39" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ReportableSegmentMember_lbl_c57c39" xml:lang="en-US">Total Reportable Segment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DesktopServices" xlink:label="cxdo_DesktopServices" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DesktopServices" xlink:to="cxdo_DesktopServices_lbl_a34aab" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_DesktopServices_lbl_a34aab" xml:lang="en-US">Desktop devices</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InterestReceivedOnEquipmentFinancing" xlink:label="cxdo_InterestReceivedOnEquipmentFinancing" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_InterestReceivedOnEquipmentFinancing" xlink:to="cxdo_InterestReceivedOnEquipmentFinancing_lbl_5101bb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_InterestReceivedOnEquipmentFinancing_lbl_5101bb" xml:lang="en-US">Equipment financing revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TelecommunicationsServices" xlink:label="cxdo_TelecommunicationsServices" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TelecommunicationsServices" xlink:to="cxdo_TelecommunicationsServices_lbl_4671cc" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TelecommunicationsServices_lbl_4671cc" xml:lang="en-US">Telecommunications services</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FeesCommissionsAndOtherRecognizedOverTime" xlink:label="cxdo_FeesCommissionsAndOtherRecognizedOverTime" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_FeesCommissionsAndOtherRecognizedOverTime" xlink:to="cxdo_FeesCommissionsAndOtherRecognizedOverTime_lbl_d2d526" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_FeesCommissionsAndOtherRecognizedOverTime_lbl_d2d526" xml:lang="en-US">Fees, commissions, and other, recognized over time</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OneTimeFeesCommissionsAndOther" xlink:label="cxdo_OneTimeFeesCommissionsAndOther" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_OneTimeFeesCommissionsAndOther" xlink:to="cxdo_OneTimeFeesCommissionsAndOther_lbl_301b43" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_OneTimeFeesCommissionsAndOther_lbl_301b43" xml:lang="en-US">One time fees, commissions and other</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareLicenses" xlink:label="cxdo_SoftwareLicenses" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_SoftwareLicenses" xlink:to="cxdo_SoftwareLicenses_lbl_6ec7cb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_SoftwareLicenses_lbl_6ec7cb" xml:lang="en-US">Software licenses</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SubscriptionMaintenanceAndSupport" xlink:label="cxdo_SubscriptionMaintenanceAndSupport" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_SubscriptionMaintenanceAndSupport" xlink:to="cxdo_SubscriptionMaintenanceAndSupport_lbl_0e5435" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_SubscriptionMaintenanceAndSupport_lbl_0e5435" xml:lang="en-US">Subscription maintenance and support</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfessionalFees" xlink:label="us-gaap_ProfessionalFees" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfessionalFees" xlink:to="us-gaap_ProfessionalFees_lbl_31fa11" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProfessionalFees_lbl_31fa11" xml:lang="en-US">Professional services and other</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl_703748" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl_703748" xml:lang="en-US">Revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl_10" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_lbl_10" xml:lang="en-US">[Revenue from Contract with Customer, Including Assessed Tax]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime" xlink:label="cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime" xlink:to="cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime_lbl_d9cbfa" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime_lbl_d9cbfa" xml:lang="en-US">Products, services, and fees recognized at a point in time</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ProductsServicesAndFeesTransferredOverTime" xlink:label="cxdo_ProductsServicesAndFeesTransferredOverTime" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ProductsServicesAndFeesTransferredOverTime" xlink:to="cxdo_ProductsServicesAndFeesTransferredOverTime_lbl_adb639" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ProductsServicesAndFeesTransferredOverTime_lbl_adb639" xml:lang="en-US">Products, services, and fees transferred over time</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RevenueRecognition" xlink:label="cxdo_RevenueRecognition" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_RevenueRecognition" xlink:to="cxdo_RevenueRecognition_lbl_c7e452" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_RevenueRecognition_lbl_c7e452" xml:lang="en-US">Revenue recognition. Total</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherReceivables" xlink:label="us-gaap_OtherReceivables" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherReceivables" xlink:to="us-gaap_OtherReceivables_lbl_335523" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherReceivables_lbl_335523" xml:lang="en-US">Receivables, which are included in trade receivables, net of allowance for credit losses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepositContractsAssets" xlink:label="us-gaap_DepositContractsAssets" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepositContractsAssets" xlink:to="us-gaap_DepositContractsAssets_lbl_71833b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepositContractsAssets_lbl_71833b" xml:lang="en-US">Contract assets, net of allowance for credit losses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepositContractsLiabilities" xlink:to="us-gaap_DepositContractsLiabilities_lbl_ac4d10" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DepositContractsLiabilities_lbl_ac4d10" xml:lang="en-US">Contract liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepositContractsLiabilities" xlink:label="us-gaap_DepositContractsLiabilities" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepositContractsLiabilities" xlink:to="us-gaap_DepositContractsLiabilities_lbl_4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepositContractsLiabilities_lbl_4" xml:lang="en-US">[Deposit Contracts, Liabilities]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContractAssetsMember" xlink:label="cxdo_ContractAssetsMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ContractAssetsMember" xlink:to="cxdo_ContractAssetsMember_lbl_908ba1" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ContractAssetsMember_lbl_908ba1" xml:lang="en-US">Contract Assets [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContractLiabilitiesMember" xlink:label="cxdo_ContractLiabilitiesMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ContractLiabilitiesMember" xlink:to="cxdo_ContractLiabilitiesMember_lbl_a1446f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ContractLiabilitiesMember_lbl_a1446f" xml:lang="en-US">Contract Liabilities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RevenueRecognizedThatWasIncludedInContractLiabilityBalance" xlink:label="cxdo_RevenueRecognizedThatWasIncludedInContractLiabilityBalance" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_RevenueRecognizedThatWasIncludedInContractLiabilityBalance" xlink:to="cxdo_RevenueRecognizedThatWasIncludedInContractLiabilityBalance_lbl_632f3c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_RevenueRecognizedThatWasIncludedInContractLiabilityBalance_lbl_632f3c" xml:lang="en-US">Revenue recognized that was included in the contract liability balance at the beginning of the period</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue" xlink:label="cxdo_IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue" xlink:to="cxdo_IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue_lbl_bef582" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue_lbl_bef582" xml:lang="en-US">Increase due to cash received, excluding amounts recognized as revenue during the period</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TransferredToReceivablesFromContractAssetsRecognized" xlink:label="cxdo_TransferredToReceivablesFromContractAssetsRecognized" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TransferredToReceivablesFromContractAssetsRecognized" xlink:to="cxdo_TransferredToReceivablesFromContractAssetsRecognized_lbl_952967" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TransferredToReceivablesFromContractAssetsRecognized_lbl_952967" xml:lang="en-US">Transferred to receivables from contract assets recognized at the beginning of the period</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncreaseDueToAdditionalUnamortizedDiscounts" xlink:label="cxdo_IncreaseDueToAdditionalUnamortizedDiscounts" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_IncreaseDueToAdditionalUnamortizedDiscounts" xlink:to="cxdo_IncreaseDueToAdditionalUnamortizedDiscounts_lbl_4a66c3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_IncreaseDueToAdditionalUnamortizedDiscounts_lbl_4a66c3" xml:lang="en-US">Increase due to additional unamortized discounts</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DepositContractsAssetsGross" xlink:label="cxdo_DepositContractsAssetsGross" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DepositContractsAssetsGross" xlink:to="cxdo_DepositContractsAssetsGross_lbl_a691cf" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_DepositContractsAssetsGross_lbl_a691cf" xml:lang="en-US">Gross contract assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceforcreditlossesofContractAssets" xlink:to="cxdo_AllowanceforcreditlossesofContractAssets_lbl_5a9d7b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="cxdo_AllowanceforcreditlossesofContractAssets_lbl_5a9d7b" xml:lang="en-US">Less: allowance for credit losses</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceforcreditlossesofContractAssets" xlink:label="cxdo_AllowanceforcreditlossesofContractAssets" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceforcreditlossesofContractAssets" xlink:to="cxdo_AllowanceforcreditlossesofContractAssets_lbl_3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AllowanceforcreditlossesofContractAssets_lbl_3" xml:lang="en-US">[Less: allowance for credit losses]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepositContractsAssets" xlink:to="us-gaap_DepositContractsAssets_lbl_dbed2d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_DepositContractsAssets_lbl_dbed2d" xml:lang="en-US">Contract assets, net of allowance for credit losses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowancesForCreditLossesOfContractAssets" xlink:to="cxdo_AllowancesForCreditLossesOfContractAssets_lbl_4b5269" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="cxdo_AllowancesForCreditLossesOfContractAssets_lbl_4b5269" xml:lang="en-US">Opening balance</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowancesForCreditLossesOfContractAssets" xlink:label="cxdo_AllowancesForCreditLossesOfContractAssets" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowancesForCreditLossesOfContractAssets" xlink:to="cxdo_AllowancesForCreditLossesOfContractAssets_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AllowancesForCreditLossesOfContractAssets_lbl_2" xml:lang="en-US">[Opening balance]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLossesOfContractAssetsProvision" xlink:label="cxdo_AllowanceForCreditLossesOfContractAssetsProvision" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceForCreditLossesOfContractAssetsProvision" xlink:to="cxdo_AllowanceForCreditLossesOfContractAssetsProvision_lbl_e045f7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AllowanceForCreditLossesOfContractAssetsProvision_lbl_e045f7" xml:lang="en-US">Provision</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs" xlink:to="cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs_lbl_f470be" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs_lbl_f470be" xml:lang="en-US">Write- offs</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs" xlink:label="cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs" xlink:to="cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs_lbl_4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs_lbl_4" xml:lang="en-US">[Write- offs]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FinancingReceivableAllowanceForCreditLossesRecoveryOthers" xlink:label="cxdo_FinancingReceivableAllowanceForCreditLossesRecoveryOthers" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_FinancingReceivableAllowanceForCreditLossesRecoveryOthers" xlink:to="cxdo_FinancingReceivableAllowanceForCreditLossesRecoveryOthers_lbl_eb281d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_FinancingReceivableAllowanceForCreditLossesRecoveryOthers_lbl_eb281d" xml:lang="en-US">Recoveries and others</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceForCreditLossesOfContractAssets" xlink:to="cxdo_AllowanceForCreditLossesOfContractAssets_lbl_1c4656" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="cxdo_AllowanceForCreditLossesOfContractAssets_lbl_1c4656" xml:lang="en-US">Closing balance</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLossesOfContractAssets" xlink:label="cxdo_AllowanceForCreditLossesOfContractAssets" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceForCreditLossesOfContractAssets" xlink:to="cxdo_AllowanceForCreditLossesOfContractAssets_lbl_6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AllowanceForCreditLossesOfContractAssets_lbl_6" xml:lang="en-US">[Closing balance]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsegmentsAxis" xlink:label="us-gaap_SubsegmentsAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SubsegmentsAxis" xlink:to="us-gaap_SubsegmentsAxis_lbl_fc8591" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SubsegmentsAxis_lbl_fc8591" xml:lang="en-US">Subsegments [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TelecommunicationsServicesMember" xlink:label="cxdo_TelecommunicationsServicesMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TelecommunicationsServicesMember" xlink:to="cxdo_TelecommunicationsServicesMember_lbl_5590cb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TelecommunicationsServicesMember_lbl_5590cb" xml:lang="en-US">Telecommunications Services [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DesktopDevicesMember" xlink:label="cxdo_DesktopDevicesMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DesktopDevicesMember" xlink:to="cxdo_DesktopDevicesMember_lbl_6bec3d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_DesktopDevicesMember_lbl_6bec3d" xml:lang="en-US">Desktop Devices [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionsMember" xlink:label="cxdo_SoftwareSolutionsMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_SoftwareSolutionsMember" xlink:to="cxdo_SoftwareSolutionsMember_lbl_a983a0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_SoftwareSolutionsMember_lbl_a983a0" xml:lang="en-US">Software Solutions [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInSecondYear" xlink:label="us-gaap_PurchaseObligationDueInSecondYear" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PurchaseObligationDueInSecondYear" xlink:to="us-gaap_PurchaseObligationDueInSecondYear_lbl_b8b6c7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PurchaseObligationDueInSecondYear_lbl_b8b6c7" xml:lang="en-US">2025</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInThirdYear" xlink:label="us-gaap_PurchaseObligationDueInThirdYear" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PurchaseObligationDueInThirdYear" xlink:to="us-gaap_PurchaseObligationDueInThirdYear_lbl_38b2c3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PurchaseObligationDueInThirdYear_lbl_38b2c3" xml:lang="en-US">2026</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInFourthYear" xlink:label="us-gaap_PurchaseObligationDueInFourthYear" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PurchaseObligationDueInFourthYear" xlink:to="us-gaap_PurchaseObligationDueInFourthYear_lbl_d4a63e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PurchaseObligationDueInFourthYear_lbl_d4a63e" xml:lang="en-US">2027</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInFifthYear" xlink:label="us-gaap_PurchaseObligationDueInFifthYear" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PurchaseObligationDueInFifthYear" xlink:to="us-gaap_PurchaseObligationDueInFifthYear_lbl_57ef5f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PurchaseObligationDueInFifthYear_lbl_57ef5f" xml:lang="en-US">2028</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueAfterFifthYear" xlink:label="us-gaap_PurchaseObligationDueAfterFifthYear" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PurchaseObligationDueAfterFifthYear" xlink:to="us-gaap_PurchaseObligationDueAfterFifthYear_lbl_1019e3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PurchaseObligationDueAfterFifthYear_lbl_1019e3" xml:lang="en-US">2029 and thereafter</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PurchaseObligation" xlink:to="us-gaap_PurchaseObligation_lbl_78d73d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PurchaseObligation_lbl_78d73d" xml:lang="en-US">Total</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligation" xlink:label="us-gaap_PurchaseObligation" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PurchaseObligation" xlink:to="us-gaap_PurchaseObligation_lbl_7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PurchaseObligation_lbl_7" xml:lang="en-US">[Purchase Obligation]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLossesAsPercentOfGrossContractAssets" xlink:label="cxdo_AllowanceForCreditLossesAsPercentOfGrossContractAssets" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceForCreditLossesAsPercentOfGrossContractAssets" xlink:to="cxdo_AllowanceForCreditLossesAsPercentOfGrossContractAssets_lbl_e51410" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AllowanceForCreditLossesAsPercentOfGrossContractAssets_lbl_e51410" xml:lang="en-US">Allowance for credit losses as percent of gross contract assets</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLossesDescriptionOfPeriod" xlink:label="cxdo_AllowanceForCreditLossesDescriptionOfPeriod" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceForCreditLossesDescriptionOfPeriod" xlink:to="cxdo_AllowanceForCreditLossesDescriptionOfPeriod_lbl_b5ff9e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AllowanceForCreditLossesDescriptionOfPeriod_lbl_b5ff9e" xml:lang="en-US">Allowance for credit losses description of period</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl_cf34c8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_lbl_cf34c8" xml:lang="en-US">Weighted-average share reconciliation:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl_013c09" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl_013c09" xml:lang="en-US">Weighted-average basic shares outstanding (B)</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DilutiveEffectOfStockBasedAwards" xlink:label="cxdo_DilutiveEffectOfStockBasedAwards" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DilutiveEffectOfStockBasedAwards" xlink:to="cxdo_DilutiveEffectOfStockBasedAwards_lbl_22ab83" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_DilutiveEffectOfStockBasedAwards_lbl_22ab83" xml:lang="en-US">Dilutive effect of stock-based awards</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl_7a1e60" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl_7a1e60" xml:lang="en-US">Diluted weighted-average outstanding shares of common stock (C)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_lbl_f21f91" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareBasic_lbl_f21f91" xml:lang="en-US">Basic (A/B)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl_918236" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_EarningsPerShareDiluted_lbl_918236" xml:lang="en-US">Diluted (A/C)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="us-gaap_FinancialInstrumentAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancialInstrumentAxis" xlink:to="us-gaap_FinancialInstrumentAxis_lbl_7cc405" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinancialInstrumentAxis_lbl_7cc405" xml:lang="en-US">Financial Instrument [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockOptionMember" xlink:label="us-gaap_StockOptionMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockOptionMember" xlink:to="us-gaap_StockOptionMember_lbl_ec93db" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_StockOptionMember_lbl_ec93db" xml:lang="en-US">Stock Options [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl_642250" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl_642250" xml:lang="en-US">Securities excluded from earnings</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableGross" xlink:label="us-gaap_AccountsReceivableGross" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableGross" xlink:to="us-gaap_AccountsReceivableGross_lbl_c1e4a1" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableGross_lbl_c1e4a1" xml:lang="en-US">Gross trade receivables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivable_lbl_12f0c6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivable_lbl_12f0c6" xml:lang="en-US">Less: allowance for credit losses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivable_lbl_3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivable_lbl_3" xml:lang="en-US">[Accounts Receivable, Allowance for Credit Loss]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNet" xlink:label="us-gaap_AccountsReceivableNet" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNet" xlink:to="us-gaap_AccountsReceivableNet_lbl_d39064" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableNet_lbl_d39064" xml:lang="en-US">Trade receivables, net</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NontradeReceivablesCurrent" xlink:label="us-gaap_NontradeReceivablesCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NontradeReceivablesCurrent" xlink:to="us-gaap_NontradeReceivablesCurrent_lbl_782729" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NontradeReceivablesCurrent_lbl_782729" xml:lang="en-US">Current trade receivables, net</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermInvestmentsAndReceivablesNet" xlink:label="us-gaap_LongTermInvestmentsAndReceivablesNet" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermInvestmentsAndReceivablesNet" xlink:to="us-gaap_LongTermInvestmentsAndReceivablesNet_lbl_55bd33" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermInvestmentsAndReceivablesNet_lbl_55bd33" xml:lang="en-US">Long-term trade receivables, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TradeReceivablesNet" xlink:to="cxdo_TradeReceivablesNet_lbl_322a17" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_TradeReceivablesNet_lbl_322a17" xml:lang="en-US">Trade receivables, net</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TradeReceivablesNet" xlink:label="cxdo_TradeReceivablesNet" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TradeReceivablesNet" xlink:to="cxdo_TradeReceivablesNet_lbl_7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TradeReceivablesNet_lbl_7" xml:lang="en-US">[Trade receivables, net]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent" xlink:to="us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent_lbl_f81a41" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent_lbl_f81a41" xml:lang="en-US">Begaining balance</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent" xlink:label="us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent" xlink:to="us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent_lbl_2" xml:lang="en-US">[Net Investment in Lease, Allowance for Credit Loss, Current]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProvisionForOtherCreditLosses" xlink:to="us-gaap_ProvisionForOtherCreditLosses_lbl_00e263" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ProvisionForOtherCreditLosses_lbl_00e263" xml:lang="en-US">Provision</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProvisionForOtherCreditLosses" xlink:label="us-gaap_ProvisionForOtherCreditLosses" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProvisionForOtherCreditLosses" xlink:to="us-gaap_ProvisionForOtherCreditLosses_lbl_3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProvisionForOtherCreditLosses_lbl_3" xml:lang="en-US">[Provision for Other Credit Losses]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceForLoansAndLeaseLossesWriteOffs" xlink:to="cxdo_AllowanceForLoansAndLeaseLossesWriteOffs_lbl_8b5097" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="cxdo_AllowanceForLoansAndLeaseLossesWriteOffs_lbl_8b5097" xml:lang="en-US">Write-offs</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForLoansAndLeaseLossesWriteOffs" xlink:label="cxdo_AllowanceForLoansAndLeaseLossesWriteOffs" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceForLoansAndLeaseLossesWriteOffs" xlink:to="cxdo_AllowanceForLoansAndLeaseLossesWriteOffs_lbl_4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AllowanceForLoansAndLeaseLossesWriteOffs_lbl_4" xml:lang="en-US">[Write-offs]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReinsuranceCostsAndRecoveriesNet" xlink:to="us-gaap_ReinsuranceCostsAndRecoveriesNet_lbl_b23b4e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_ReinsuranceCostsAndRecoveriesNet_lbl_b23b4e" xml:lang="en-US">Recoveries and others</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReinsuranceCostsAndRecoveriesNet" xlink:label="us-gaap_ReinsuranceCostsAndRecoveriesNet" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReinsuranceCostsAndRecoveriesNet" xlink:to="us-gaap_ReinsuranceCostsAndRecoveriesNet_lbl_5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ReinsuranceCostsAndRecoveriesNet_lbl_5" xml:lang="en-US">[Policyholder Benefits and Claims Incurred, Assumed and Ceded]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent" xlink:to="us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent_lbl_f12b56" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent_lbl_f12b56" xml:lang="en-US">Ending balance</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AccountsPercentageOfAccountsReceivable" xlink:label="cxdo_AccountsPercentageOfAccountsReceivable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AccountsPercentageOfAccountsReceivable" xlink:to="cxdo_AccountsPercentageOfAccountsReceivable_lbl_c810c0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AccountsPercentageOfAccountsReceivable_lbl_c810c0" xml:lang="en-US">Percent of gross accounts receivable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivableRevolving" xlink:label="us-gaap_FinancingReceivableRevolving" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancingReceivableRevolving" xlink:to="us-gaap_FinancingReceivableRevolving_lbl_dd9911" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinancingReceivableRevolving_lbl_dd9911" xml:lang="en-US">Gross equipment financing receivables</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LimitedPartnersCumulativeNetIncome" xlink:label="us-gaap_LimitedPartnersCumulativeNetIncome" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LimitedPartnersCumulativeNetIncome" xlink:to="us-gaap_LimitedPartnersCumulativeNetIncome_lbl_77a55f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LimitedPartnersCumulativeNetIncome_lbl_77a55f" xml:lang="en-US">Less: unearned income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_LessAllowanceForCreditLosses" xlink:to="cxdo_LessAllowanceForCreditLosses_lbl_cf2af7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="cxdo_LessAllowanceForCreditLosses_lbl_cf2af7" xml:lang="en-US">Less: allowance for credit losses</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_LessAllowanceForCreditLosses" xlink:label="cxdo_LessAllowanceForCreditLosses" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_LessAllowanceForCreditLosses" xlink:to="cxdo_LessAllowanceForCreditLosses_lbl_4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_LessAllowanceForCreditLosses_lbl_4" xml:lang="en-US">[Less: allowance for credit losses 1]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FinancingReceivableAllowanceForCreditLossEquipment" xlink:label="cxdo_FinancingReceivableAllowanceForCreditLossEquipment" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_FinancingReceivableAllowanceForCreditLossEquipment" xlink:to="cxdo_FinancingReceivableAllowanceForCreditLossEquipment_lbl_eeed34" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_FinancingReceivableAllowanceForCreditLossEquipment_lbl_eeed34" xml:lang="en-US">Equipment financing receivables, net</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReceivablesNetCurrent" xlink:label="us-gaap_ReceivablesNetCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReceivablesNetCurrent" xlink:to="us-gaap_ReceivablesNetCurrent_lbl_d897b3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ReceivablesNetCurrent_lbl_d897b3" xml:lang="en-US">Current equipment financing receivables, net</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermAccountsNotesAndLoansReceivableNetNoncurrent" xlink:label="us-gaap_LongTermAccountsNotesAndLoansReceivableNetNoncurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermAccountsNotesAndLoansReceivableNetNoncurrent" xlink:to="us-gaap_LongTermAccountsNotesAndLoansReceivableNetNoncurrent_lbl_cf0490" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermAccountsNotesAndLoansReceivableNetNoncurrent_lbl_cf0490" xml:lang="en-US">Long-term equipment financing receivables, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_LongTermInvestmentsAndReceivables" xlink:to="cxdo_LongTermInvestmentsAndReceivables_lbl_e1bd92" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_LongTermInvestmentsAndReceivables_lbl_e1bd92" xml:lang="en-US">Equipment financing receivables, net</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_LongTermInvestmentsAndReceivables" xlink:label="cxdo_LongTermInvestmentsAndReceivables" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_LongTermInvestmentsAndReceivables" xlink:to="cxdo_LongTermInvestmentsAndReceivables_lbl_8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_LongTermInvestmentsAndReceivables_lbl_8" xml:lang="en-US">[Equipment financing receivables, net]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GrossEquipmentFinancingReceivablesNexttwelvemonths" xlink:label="cxdo_GrossEquipmentFinancingReceivablesNexttwelvemonths" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GrossEquipmentFinancingReceivablesNexttwelvemonths" xlink:to="cxdo_GrossEquipmentFinancingReceivablesNexttwelvemonths_lbl_73ef11" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_GrossEquipmentFinancingReceivablesNexttwelvemonths_lbl_73ef11" xml:lang="en-US">2025 remaining</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GrossEquipmentFinancingReceivablesYeartwo" xlink:to="cxdo_GrossEquipmentFinancingReceivablesYeartwo_lbl_c33d94" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_GrossEquipmentFinancingReceivablesYeartwo_lbl_c33d94" xml:lang="en-US">2026</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GrossEquipmentFinancingReceivablesYeartwo" xlink:label="cxdo_GrossEquipmentFinancingReceivablesYeartwo" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GrossEquipmentFinancingReceivablesYeartwo" xlink:to="cxdo_GrossEquipmentFinancingReceivablesYeartwo_lbl_3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_GrossEquipmentFinancingReceivablesYeartwo_lbl_3" xml:lang="en-US">[2026]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GrossEquipmentFinancingReceivablesYearthree" xlink:to="cxdo_GrossEquipmentFinancingReceivablesYearthree_lbl_c4c08e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_GrossEquipmentFinancingReceivablesYearthree_lbl_c4c08e" xml:lang="en-US">2027</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GrossEquipmentFinancingReceivablesYearthree" xlink:label="cxdo_GrossEquipmentFinancingReceivablesYearthree" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GrossEquipmentFinancingReceivablesYearthree" xlink:to="cxdo_GrossEquipmentFinancingReceivablesYearthree_lbl_4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_GrossEquipmentFinancingReceivablesYearthree_lbl_4" xml:lang="en-US">[2027]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GrossEquipmentFinancingReceivablesYearFour" xlink:to="cxdo_GrossEquipmentFinancingReceivablesYearFour_lbl_9754c3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_GrossEquipmentFinancingReceivablesYearFour_lbl_9754c3" xml:lang="en-US">2028</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GrossEquipmentFinancingReceivablesYearFour" xlink:label="cxdo_GrossEquipmentFinancingReceivablesYearFour" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GrossEquipmentFinancingReceivablesYearFour" xlink:to="cxdo_GrossEquipmentFinancingReceivablesYearFour_lbl_5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_GrossEquipmentFinancingReceivablesYearFour_lbl_5" xml:lang="en-US">[2028]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GrossEquipmentFinancingReceivablesYearFive" xlink:label="cxdo_GrossEquipmentFinancingReceivablesYearFive" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GrossEquipmentFinancingReceivablesYearFive" xlink:to="cxdo_GrossEquipmentFinancingReceivablesYearFive_lbl_cb65b3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_GrossEquipmentFinancingReceivablesYearFive_lbl_cb65b3" xml:lang="en-US">2029</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GrossEquipmentFinancingReceivablesAfteryearfive" xlink:label="cxdo_GrossEquipmentFinancingReceivablesAfteryearfive" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GrossEquipmentFinancingReceivablesAfteryearfive" xlink:to="cxdo_GrossEquipmentFinancingReceivablesAfteryearfive_lbl_5087b0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_GrossEquipmentFinancingReceivablesAfteryearfive_lbl_5087b0" xml:lang="en-US">2030 and thereafter</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_EquipmentFinancingReceivablesDue" xlink:to="cxdo_EquipmentFinancingReceivablesDue_lbl_860f43" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_EquipmentFinancingReceivablesDue_lbl_860f43" xml:lang="en-US">Total</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesDue" xlink:label="cxdo_EquipmentFinancingReceivablesDue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_EquipmentFinancingReceivablesDue" xlink:to="cxdo_EquipmentFinancingReceivablesDue_lbl_8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_EquipmentFinancingReceivablesDue_lbl_8" xml:lang="en-US">[Total]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditLossStatusAxis" xlink:label="us-gaap_CreditLossStatusAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditLossStatusAxis" xlink:to="us-gaap_CreditLossStatusAxis_lbl_b9845b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CreditLossStatusAxis_lbl_b9845b" xml:lang="en-US">Credit Loss Status [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLossesMember" xlink:label="cxdo_AllowanceForCreditLossesMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceForCreditLossesMember" xlink:to="cxdo_AllowanceForCreditLossesMember_lbl_9ee10a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AllowanceForCreditLossesMember_lbl_9ee10a" xml:lang="en-US">Allowance for Credit Losses [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceforcreditlossesofContractAssets" xlink:to="cxdo_AllowanceforcreditlossesofContractAssets_lbl_c49add" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="cxdo_AllowanceforcreditlossesofContractAssets_lbl_c49add" xml:lang="en-US">Opening balance</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProvisionForOtherCreditLosses" xlink:to="us-gaap_ProvisionForOtherCreditLosses_lbl_e82f9b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_ProvisionForOtherCreditLosses_lbl_e82f9b" xml:lang="en-US">Provision</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs" xlink:to="us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs_lbl_3139f0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs_lbl_3139f0" xml:lang="en-US">Write- offs</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs" xlink:label="us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs" xlink:to="us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs_lbl_4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs_lbl_4" xml:lang="en-US">[Financing Receivable, Allowance for Credit Loss, Writeoff]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery" xlink:to="us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery_lbl_efbae4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery_lbl_efbae4" xml:lang="en-US">Recoveries and others</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery" xlink:label="us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery" xlink:to="us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery_lbl_5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery_lbl_5" xml:lang="en-US">[Financing Receivable, Allowance for Credit Loss, Recovery]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllowanceforcreditlossesofContractAssets" xlink:to="cxdo_AllowanceforcreditlossesofContractAssets_lbl_8cf12a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="cxdo_AllowanceforcreditlossesofContractAssets_lbl_8cf12a" xml:lang="en-US">Closing balance</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablesPeriodPastDueAxis" xlink:label="us-gaap_FinancingReceivablesPeriodPastDueAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancingReceivablesPeriodPastDueAxis" xlink:to="us-gaap_FinancingReceivablesPeriodPastDueAxis_lbl_63350f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinancingReceivablesPeriodPastDueAxis_lbl_63350f" xml:lang="en-US">Financial Asset, Aging [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivables60To89DaysPastDueMember" xlink:label="us-gaap_FinancingReceivables60To89DaysPastDueMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancingReceivables60To89DaysPastDueMember" xlink:to="us-gaap_FinancingReceivables60To89DaysPastDueMember_lbl_9314de" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinancingReceivables60To89DaysPastDueMember_lbl_9314de" xml:lang="en-US">Past due amounts 0-90 days [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember" xlink:label="us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember" xlink:to="us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember_lbl_115f31" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember_lbl_115f31" xml:lang="en-US">Past due amounts &gt;90 days [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AgingOfReceivablesAmountDues" xlink:label="cxdo_AgingOfReceivablesAmountDues" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AgingOfReceivablesAmountDues" xlink:to="cxdo_AgingOfReceivablesAmountDues_lbl_fc3721" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AgingOfReceivablesAmountDues_lbl_fc3721" xml:lang="en-US">Aging of receivables dues</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AgingOfReceivablesDues" xlink:to="cxdo_AgingOfReceivablesDues_lbl_fedbc0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_AgingOfReceivablesDues_lbl_fedbc0" xml:lang="en-US">Aging of receivables dues</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AgingOfReceivablesDues" xlink:label="cxdo_AgingOfReceivablesDues" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AgingOfReceivablesDues" xlink:to="cxdo_AgingOfReceivablesDues_lbl_3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AgingOfReceivablesDues_lbl_3" xml:lang="en-US">[Aging of receivables dues]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_StatementGeographicalAxis_lbl_8069fb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_StatementGeographicalAxis_lbl_8069fb" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateAxis" xlink:label="us-gaap_AwardDateAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardDateAxis" xlink:to="us-gaap_AwardDateAxis_lbl_24f28b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AwardDateAxis_lbl_24f28b" xml:lang="en-US">Award Date [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_UnitedStateMember" xlink:label="cxdo_UnitedStateMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_UnitedStateMember" xlink:to="cxdo_UnitedStateMember_lbl_a48016" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_UnitedStateMember_lbl_a48016" xml:lang="en-US">UNITED STATES [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyTwoMember" xlink:label="cxdo_TwoThousendTwentyTwoMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TwoThousendTwentyTwoMember" xlink:to="cxdo_TwoThousendTwentyTwoMember_lbl_e199e6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TwoThousendTwentyTwoMember_lbl_e199e6" xml:lang="en-US">2022 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyOneMember" xlink:label="cxdo_TwoThousendTwentyOneMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TwoThousendTwentyOneMember" xlink:to="cxdo_TwoThousendTwentyOneMember_lbl_dac783" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TwoThousendTwentyOneMember_lbl_dac783" xml:lang="en-US">2021 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyFiveMember" xlink:label="cxdo_TwoThousendTwentyFiveMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TwoThousendTwentyFiveMember" xlink:to="cxdo_TwoThousendTwentyFiveMember_lbl_badda5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TwoThousendTwentyFiveMember_lbl_badda5" xml:lang="en-US">2025 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyFourMember" xlink:label="cxdo_TwoThousendTwentyFourMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TwoThousendTwentyFourMember" xlink:to="cxdo_TwoThousendTwentyFourMember_lbl_428b62" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TwoThousendTwentyFourMember_lbl_428b62" xml:lang="en-US">2024 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PriorMember" xlink:label="cxdo_PriorMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_PriorMember" xlink:to="cxdo_PriorMember_lbl_ff9542" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_PriorMember_lbl_ff9542" xml:lang="en-US">Prior [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyThreeMember" xlink:label="cxdo_TwoThousendTwentyThreeMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TwoThousendTwentyThreeMember" xlink:to="cxdo_TwoThousendTwentyThreeMember_lbl_6fb72f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TwoThousendTwentyThreeMember_lbl_6fb72f" xml:lang="en-US">2023 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TotalEquipmentFinancingReceivablesDue" xlink:label="cxdo_TotalEquipmentFinancingReceivablesDue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TotalEquipmentFinancingReceivablesDue" xlink:to="cxdo_TotalEquipmentFinancingReceivablesDue_lbl_f8f2db" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TotalEquipmentFinancingReceivablesDue_lbl_f8f2db" xml:lang="en-US">Total equipment financing receivables</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs" xlink:label="cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs" xlink:to="cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs_lbl_eb459d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs_lbl_eb459d" xml:lang="en-US">Current period gross write offs equipment financing receivables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_FinancingReceivableAllowanceForCreditLossToNonaccrualPercent" xlink:to="srt_FinancingReceivableAllowanceForCreditLossToNonaccrualPercent_lbl_d68db1" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="srt_FinancingReceivableAllowanceForCreditLossToNonaccrualPercent_lbl_d68db1" xml:lang="en-US">Allowance for credit losses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_FinancingReceivableAllowanceForCreditLossToNonaccrualPercent" xlink:label="srt_FinancingReceivableAllowanceForCreditLossToNonaccrualPercent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_FinancingReceivableAllowanceForCreditLossToNonaccrualPercent" xlink:to="srt_FinancingReceivableAllowanceForCreditLossToNonaccrualPercent_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_FinancingReceivableAllowanceForCreditLossToNonaccrualPercent_lbl_2" xml:lang="en-US">[Financing Receivable, Allowance for Credit Loss to Nonaccrual, Percent]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidInsurance" xlink:label="us-gaap_PrepaidInsurance" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidInsurance" xlink:to="us-gaap_PrepaidInsurance_lbl_aed1c7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PrepaidInsurance_lbl_aed1c7" xml:lang="en-US">Prepaid corporate insurance</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PrepaidSoftwareServices" xlink:label="cxdo_PrepaidSoftwareServices" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_PrepaidSoftwareServices" xlink:to="cxdo_PrepaidSoftwareServices_lbl_77a209" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_PrepaidSoftwareServices_lbl_77a209" xml:lang="en-US">Prepaid software services and support</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidReinsurancePremiums" xlink:label="us-gaap_PrepaidReinsurancePremiums" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidReinsurancePremiums" xlink:to="us-gaap_PrepaidReinsurancePremiums_lbl_6dc3db" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PrepaidReinsurancePremiums_lbl_6dc3db" xml:lang="en-US">Prepaid employee insurance premiums</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PrepaidNasdaqListingFee" xlink:label="cxdo_PrepaidNasdaqListingFee" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_PrepaidNasdaqListingFee" xlink:to="cxdo_PrepaidNasdaqListingFee_lbl_7f3fb7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_PrepaidNasdaqListingFee_lbl_7f3fb7" xml:lang="en-US">Prepaid nasdaq listing fee</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PrepaidexpensesForUserGroupMeeting" xlink:label="cxdo_PrepaidexpensesForUserGroupMeeting" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_PrepaidexpensesForUserGroupMeeting" xlink:to="cxdo_PrepaidexpensesForUserGroupMeeting_lbl_cad45b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_PrepaidexpensesForUserGroupMeeting_lbl_cad45b" xml:lang="en-US">User group meeting fees</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedRentCurrent" xlink:label="us-gaap_AccruedRentCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedRentCurrent" xlink:to="us-gaap_AccruedRentCurrent_lbl_bcdb80" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccruedRentCurrent_lbl_bcdb80" xml:lang="en-US">Prepaid rent</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherPrepaidExpenseCurrent" xlink:label="us-gaap_OtherPrepaidExpenseCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherPrepaidExpenseCurrent" xlink:to="us-gaap_OtherPrepaidExpenseCurrent_lbl_cbb5d9" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherPrepaidExpenseCurrent_lbl_cbb5d9" xml:lang="en-US">Other prepaid expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssets" xlink:label="us-gaap_PrepaidExpenseAndOtherAssets" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseAndOtherAssets" xlink:to="us-gaap_PrepaidExpenseAndOtherAssets_lbl_6bb29f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PrepaidExpenseAndOtherAssets_lbl_6bb29f" xml:lang="en-US">Total prepaid expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl_176b46" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl_176b46" xml:lang="en-US">Less: Accumulated Depreciation</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl_2" xml:lang="en-US">[Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl_9166e2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl_9166e2" xml:lang="en-US">Total Property And Equipment, Net</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentGross_lbl_9025a0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentGross_lbl_9025a0" xml:lang="en-US">Property And Equipment, Gross</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization_lbl_d1386e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl_d1386e" xml:lang="en-US">Depreciation expense included in general and administrative expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="us-gaap_CustomerRelationshipsMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerRelationshipsMember" xlink:to="us-gaap_CustomerRelationshipsMember_lbl_c7e11d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CustomerRelationshipsMember_lbl_c7e11d" xml:lang="en-US">Customer Relationships</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DevelopedTechnologiesMember" xlink:to="cxdo_DevelopedTechnologiesMember_lbl_70eb3b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_DevelopedTechnologiesMember_lbl_70eb3b" xml:lang="en-US">Developed Technologies</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TrademarkAndTradeNamesMember" xlink:label="cxdo_TrademarkAndTradeNamesMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TrademarkAndTradeNamesMember" xlink:to="cxdo_TrademarkAndTradeNamesMember_lbl_d93d6c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TrademarkAndTradeNamesMember_lbl_d93d6c" xml:lang="en-US">Trademark and trade names [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TotalacquiredintangibleassetsMember" xlink:label="cxdo_TotalacquiredintangibleassetsMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TotalacquiredintangibleassetsMember" xlink:to="cxdo_TotalacquiredintangibleassetsMember_lbl_92e552" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TotalacquiredintangibleassetsMember_lbl_92e552" xml:lang="en-US">Total acquired intangible assets [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="us-gaap_FiniteLivedIntangibleAssetsGross_lbl_d1d2ef" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsGross_lbl_d1d2ef" xml:lang="en-US">Carrying Amount Of Intangible, Gross</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl_b44a4a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl_b44a4a" xml:lang="en-US">Less: Accumulated Amortization</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_lbl_39ee09" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl_39ee09" xml:lang="en-US">Carrying Amount Of Intangible, Net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl_3298dd" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl_3298dd" xml:lang="en-US">2025</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_lbl_2" xml:lang="en-US">[Finite-Lived Intangible Asset, Expected Amortization, Year One]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl_68b9d3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl_68b9d3" xml:lang="en-US">2026</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl_3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_lbl_3" xml:lang="en-US">[Finite-Lived Intangible Asset, Expected Amortization, Year Two]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl_5356f4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl_5356f4" xml:lang="en-US">2027</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl_4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_lbl_4" xml:lang="en-US">[Finite-Lived Intangible Asset, Expected Amortization, Year Three]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl_629010" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl_629010" xml:lang="en-US">2028</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl_5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_lbl_5" xml:lang="en-US">[Finite-Lived Intangible Asset, Expected Amortization, Year Four]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_lbl_b0934b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_lbl_b0934b" xml:lang="en-US">2029</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_lbl_6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_lbl_6" xml:lang="en-US">[Finite-Lived Intangible Asset, Expected Amortization, Year Five]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_lbl_880a5b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_lbl_880a5b" xml:lang="en-US">2030 and thereafter</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_lbl_7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_lbl_7" xml:lang="en-US">[Finite-Lived Intangible Asset, Expected Amortization, after Year Five]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNet_lbl_930b86" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNet_lbl_930b86" xml:lang="en-US">Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GoodwillBeginningBalance" xlink:to="cxdo_GoodwillBeginningBalance_lbl_5b6dfe" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="cxdo_GoodwillBeginningBalance_lbl_5b6dfe" xml:lang="en-US">Goodwill, beginning balance</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GoodwillBeginningBalance" xlink:label="cxdo_GoodwillBeginningBalance" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GoodwillBeginningBalance" xlink:to="cxdo_GoodwillBeginningBalance_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_GoodwillBeginningBalance_lbl_2" xml:lang="en-US">[Goodwill, beginning balance]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GoodwillAdditions" xlink:label="cxdo_GoodwillAdditions" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GoodwillAdditions" xlink:to="cxdo_GoodwillAdditions_lbl_6f4a47" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_GoodwillAdditions_lbl_6f4a47" xml:lang="en-US">Additions</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GoodwillEndingBalance" xlink:to="cxdo_GoodwillEndingBalance_lbl_29be97" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="cxdo_GoodwillEndingBalance_lbl_29be97" xml:lang="en-US">Goodwill, ending balance</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GoodwillEndingBalance" xlink:label="cxdo_GoodwillEndingBalance" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_GoodwillEndingBalance" xlink:to="cxdo_GoodwillEndingBalance_lbl_4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_GoodwillEndingBalance_lbl_4" xml:lang="en-US">[Goodwill, ending balance]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="us-gaap_IncomeStatementLocationAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementLocationAxis" xlink:to="us-gaap_IncomeStatementLocationAxis_lbl_63924b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeStatementLocationAxis_lbl_63924b" xml:lang="en-US">Income Statement Location Axis</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="us-gaap_SellingAndMarketingExpenseMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingAndMarketingExpenseMember" xlink:to="us-gaap_SellingAndMarketingExpenseMember_lbl_ccc0ac" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SellingAndMarketingExpenseMember_lbl_ccc0ac" xml:lang="en-US">Selling and Marketing</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="us-gaap_GeneralAndAdministrativeExpenseMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GeneralAndAdministrativeExpenseMember" xlink:to="us-gaap_GeneralAndAdministrativeExpenseMember_lbl_fc164c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_GeneralAndAdministrativeExpenseMember_lbl_fc164c" xml:lang="en-US">General and Administrative</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionsRevenueMember" xlink:label="cxdo_SoftwareSolutionsRevenueMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_SoftwareSolutionsRevenueMember" xlink:to="cxdo_SoftwareSolutionsRevenueMember_lbl_06ef9b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_SoftwareSolutionsRevenueMember_lbl_06ef9b" xml:lang="en-US">Software Solutions Revenue</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AmortizationOfIntangibleAssetsDevelopedTechnology" xlink:label="cxdo_AmortizationOfIntangibleAssetsDevelopedTechnology" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AmortizationOfIntangibleAssetsDevelopedTechnology" xlink:to="cxdo_AmortizationOfIntangibleAssetsDevelopedTechnology_lbl_f8a14e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AmortizationOfIntangibleAssetsDevelopedTechnology_lbl_f8a14e" xml:lang="en-US">Amortization of Intangible Assets, Developed Technology</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AmortizationOfIntangibleAssetsCustomerRelationships" xlink:label="cxdo_AmortizationOfIntangibleAssetsCustomerRelationships" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AmortizationOfIntangibleAssetsCustomerRelationships" xlink:to="cxdo_AmortizationOfIntangibleAssetsCustomerRelationships_lbl_bd5817" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AmortizationOfIntangibleAssetsCustomerRelationships_lbl_bd5817" xml:lang="en-US">Amortization of Intangible Assets, Customer Relationships</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DevelopedTechnologies" xlink:to="cxdo_DevelopedTechnologies_lbl_0de210" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_DevelopedTechnologies_lbl_0de210" xml:lang="en-US">Developed Technologies</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DevelopedTechnologies" xlink:label="cxdo_DevelopedTechnologies" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DevelopedTechnologies" xlink:to="cxdo_DevelopedTechnologies_lbl_4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_DevelopedTechnologies_lbl_4" xml:lang="en-US">[Developed Technologies]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TrademarksAndTradeNames" xlink:label="cxdo_TrademarksAndTradeNames" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TrademarksAndTradeNames" xlink:to="cxdo_TrademarksAndTradeNames_lbl_87bc74" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TrademarksAndTradeNames_lbl_87bc74" xml:lang="en-US">Trademarks And Trade Names</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_lbl_143ab6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_lbl_143ab6" xml:lang="en-US">Weighted Average Remaining Useful Life For Customer Relationships</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AmortizationOfIntangibleAssetsTrademarksAndTradeNames" xlink:label="cxdo_AmortizationOfIntangibleAssetsTrademarksAndTradeNames" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AmortizationOfIntangibleAssetsTrademarksAndTradeNames" xlink:to="cxdo_AmortizationOfIntangibleAssetsTrademarksAndTradeNames_lbl_319430" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AmortizationOfIntangibleAssetsTrademarksAndTradeNames_lbl_319430" xml:lang="en-US">Amortization of Intangible Assets, Trademarks and Trade Names</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl_efb76a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl_efb76a" xml:lang="en-US">Accrued Wages And Benefits</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AccruedAccountsPayable" xlink:label="cxdo_AccruedAccountsPayable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AccruedAccountsPayable" xlink:to="cxdo_AccruedAccountsPayable_lbl_896305" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AccruedAccountsPayable_lbl_896305" xml:lang="en-US">Accrued Accounts Payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesAndExciseTaxPayableCurrent" xlink:label="us-gaap_SalesAndExciseTaxPayableCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesAndExciseTaxPayableCurrent" xlink:to="us-gaap_SalesAndExciseTaxPayableCurrent_lbl_aa07bd" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SalesAndExciseTaxPayableCurrent_lbl_aa07bd" xml:lang="en-US">Accrued Sales And Telecommunications Taxes</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ProductWarrantyAccrual1" xlink:label="cxdo_ProductWarrantyAccrual1" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ProductWarrantyAccrual1" xlink:to="cxdo_ProductWarrantyAccrual1_lbl_328a79" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ProductWarrantyAccrual1_lbl_328a79" xml:lang="en-US">Product Warranty Liability</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CloudComputingArrangements" xlink:label="cxdo_CloudComputingArrangements" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CloudComputingArrangements" xlink:to="cxdo_CloudComputingArrangements_lbl_216601" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CloudComputingArrangements_lbl_216601" xml:lang="en-US">Cloud computing arrangements</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CreditCards" xlink:label="cxdo_CreditCards" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CreditCards" xlink:to="cxdo_CreditCards_lbl_0f74ac" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CreditCards_lbl_0f74ac" xml:lang="en-US">Credit cards</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent_lbl_a807a1" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent_lbl_a807a1" xml:lang="en-US">Other</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent_lbl_2a9e4b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent_lbl_2a9e4b" xml:lang="en-US">Total accrued expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyAccrual" xlink:to="us-gaap_ProductWarrantyAccrual_lbl_d62457" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:label="us-gaap_ProductWarrantyAccrual_lbl_d62457" xml:lang="en-US">Beginning Balance</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="us-gaap_ProductWarrantyAccrual" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyAccrual" xlink:to="us-gaap_ProductWarrantyAccrual_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProductWarrantyAccrual_lbl_2" xml:lang="en-US">[Standard and Extended Product Warranty Accrual]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ProductWarrantiesAccrualPeriodIncreaseDecrease" xlink:label="cxdo_ProductWarrantiesAccrualPeriodIncreaseDecrease" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ProductWarrantiesAccrualPeriodIncreaseDecrease" xlink:to="cxdo_ProductWarrantiesAccrualPeriodIncreaseDecrease_lbl_afe442" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ProductWarrantiesAccrualPeriodIncreaseDecrease_lbl_afe442" xml:lang="en-US">Accrual For Warranties</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentOfWarrantsGrantedForServices" xlink:label="us-gaap_AdjustmentOfWarrantsGrantedForServices" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentOfWarrantsGrantedForServices" xlink:to="us-gaap_AdjustmentOfWarrantsGrantedForServices_lbl_026247" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AdjustmentOfWarrantsGrantedForServices_lbl_026247" xml:lang="en-US">Adjustments Related To Pre-existing Warranties</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyAccrualPayments" xlink:to="us-gaap_ProductWarrantyAccrualPayments_lbl_8290e2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_ProductWarrantyAccrualPayments_lbl_8290e2" xml:lang="en-US">Warranty Settlements</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrualPayments" xlink:label="us-gaap_ProductWarrantyAccrualPayments" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyAccrualPayments" xlink:to="us-gaap_ProductWarrantyAccrualPayments_lbl_5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProductWarrantyAccrualPayments_lbl_5" xml:lang="en-US">[Standard and Extended Product Warranty Accrual, Decrease for Payments]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyAccrual" xlink:to="us-gaap_ProductWarrantyAccrual_lbl_126f14" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:label="us-gaap_ProductWarrantyAccrual_lbl_126f14" xml:lang="en-US">Ending Balance</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyExpense" xlink:label="us-gaap_ProductWarrantyExpense" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyExpense" xlink:to="us-gaap_ProductWarrantyExpense_lbl_30e7fe" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProductWarrantyExpense_lbl_30e7fe" xml:lang="en-US">Product Warranty Expense</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_NotesPayableRelatedPartyClassifiedCurrent" xlink:label="cxdo_NotesPayableRelatedPartyClassifiedCurrent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_NotesPayableRelatedPartyClassifiedCurrent" xlink:to="cxdo_NotesPayableRelatedPartyClassifiedCurrent_lbl_0799f3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_NotesPayableRelatedPartyClassifiedCurrent_lbl_0799f3" xml:lang="en-US">Related party note payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNotesPayable" xlink:label="us-gaap_OtherNotesPayable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNotesPayable" xlink:to="us-gaap_OtherNotesPayable_lbl_98d618" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherNotesPayable_lbl_98d618" xml:lang="en-US">Other note payable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NotesPayable" xlink:to="us-gaap_NotesPayable_lbl_6294aa" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NotesPayable_lbl_6294aa" xml:lang="en-US">Notes Payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NotesPayable" xlink:label="us-gaap_NotesPayable" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NotesPayable" xlink:to="us-gaap_NotesPayable_lbl_4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NotesPayable_lbl_4" xml:lang="en-US">[Notes Payable]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NotesPayableCurrent" xlink:to="us-gaap_NotesPayableCurrent_lbl_9c4762" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_NotesPayableCurrent_lbl_9c4762" xml:lang="en-US">Less: Current Notes Payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SecuredLongTermDebt" xlink:label="us-gaap_SecuredLongTermDebt" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SecuredLongTermDebt" xlink:to="us-gaap_SecuredLongTermDebt_lbl_0b081b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SecuredLongTermDebt_lbl_0b081b" xml:lang="en-US">Notes Payable, Net Of Current Portion</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl_ec994c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl_ec994c" xml:lang="en-US">2025 remaining</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl_2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_lbl_2" xml:lang="en-US">[Long-Term Debt, Maturity, Year One]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl_a11959" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl_a11959" xml:lang="en-US">2026</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl_3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_lbl_3" xml:lang="en-US">[Long-Term Debt, Maturity, Year Two]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl_3dc2fd" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl_3dc2fd" xml:lang="en-US">2027</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl_4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_lbl_4" xml:lang="en-US">[Long-Term Debt, Maturity, Year Three]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl_019f26" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl_019f26" xml:lang="en-US">2028</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl_5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_lbl_5" xml:lang="en-US">[Long-Term Debt, Maturity, Year Four]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_lbl_5f7f10" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_lbl_5f7f10" xml:lang="en-US">2029</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:to="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_lbl_6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_lbl_6" xml:lang="en-US">[Long-Term Debt, Maturity, Year Five]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebt_lbl_abe9a1" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LongTermDebt_lbl_abe9a1" xml:lang="en-US">Total</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebt_lbl_7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LongTermDebt_lbl_7" xml:lang="en-US">[Long-Term Debt]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="us-gaap_BusinessAcquisitionAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessAcquisitionAxis" xlink:to="us-gaap_BusinessAcquisitionAxis_lbl_df38b1" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessAcquisitionAxis_lbl_df38b1" xml:lang="en-US">Business Acquisition Axis</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllegiantNetworksBusinessAcquisitionMember" xlink:label="cxdo_AllegiantNetworksBusinessAcquisitionMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AllegiantNetworksBusinessAcquisitionMember" xlink:to="cxdo_AllegiantNetworksBusinessAcquisitionMember_lbl_bcfe6f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AllegiantNetworksBusinessAcquisitionMember_lbl_bcfe6f" xml:lang="en-US">Allegiant Networks business acquisition [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_NovemberOneTwoThousandTwentyTwoMember" xlink:label="cxdo_NovemberOneTwoThousandTwentyTwoMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_NovemberOneTwoThousandTwentyTwoMember" xlink:to="cxdo_NovemberOneTwoThousandTwentyTwoMember_lbl_6f0c9a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_NovemberOneTwoThousandTwentyTwoMember_lbl_6f0c9a" xml:lang="en-US">November 1 2022 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember" xlink:label="cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember" xlink:to="cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember_lbl_9a01d0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember_lbl_9a01d0" xml:lang="en-US">On February 27, 2023</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_NotesPayableRelatedPartyClassifiedCurrent" xlink:to="cxdo_NotesPayableRelatedPartyClassifiedCurrent_lbl_f525e0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_NotesPayableRelatedPartyClassifiedCurrent_lbl_f525e0" xml:lang="en-US">Related party note payable</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AgreementTerm" xlink:label="cxdo_AgreementTerm" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AgreementTerm" xlink:to="cxdo_AgreementTerm_lbl_555a6b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AgreementTerm_lbl_555a6b" xml:lang="en-US">Agreement Term</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PromissoryNote" xlink:label="cxdo_PromissoryNote" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_PromissoryNote" xlink:to="cxdo_PromissoryNote_lbl_996b7a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_PromissoryNote_lbl_996b7a" xml:lang="en-US">Promissory note</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentInterestRateDuringPeriod" xlink:label="us-gaap_DebtInstrumentInterestRateDuringPeriod" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateDuringPeriod" xlink:to="us-gaap_DebtInstrumentInterestRateDuringPeriod_lbl_c5b17c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentInterestRateDuringPeriod_lbl_c5b17c" xml:lang="en-US">Interest Rate</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForRestructuring" xlink:label="us-gaap_PaymentsForRestructuring" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForRestructuring" xlink:to="us-gaap_PaymentsForRestructuring_lbl_ebaded" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PaymentsForRestructuring_lbl_ebaded" xml:lang="en-US">Quartely Payment</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xlink:label="us-gaap_DebtInstrumentPeriodicPaymentPrincipal" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xlink:to="us-gaap_DebtInstrumentPeriodicPaymentPrincipal_lbl_e145cc" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_DebtInstrumentPeriodicPaymentPrincipal_lbl_e145cc" xml:lang="en-US">Principal amount paid</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPaid" xlink:label="us-gaap_InterestPaid" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPaid" xlink:to="us-gaap_InterestPaid_lbl_eea718" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestPaid_lbl_eea718" xml:lang="en-US">Interest paid</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding" xlink:label="us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding" xlink:to="us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding_lbl_d8a075" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding_lbl_d8a075" xml:lang="en-US">Outstanding balance</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod" xlink:label="us-gaap_LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod" xlink:to="us-gaap_LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod_lbl_ed5df0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod_lbl_ed5df0" xml:lang="en-US">Line of credit with a maximum principal amount</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityExpirationDate1" xlink:label="us-gaap_LineOfCreditFacilityExpirationDate1" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityExpirationDate1" xlink:to="us-gaap_LineOfCreditFacilityExpirationDate1_lbl_73761e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityExpirationDate1_lbl_73761e" xml:lang="en-US">Line of credit expiry term</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" xlink:label="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" xlink:to="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod_lbl_1a84b0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityInterestRateDuringPeriod_lbl_1a84b0" xml:lang="en-US">Line of credit bears interest rate</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl_d0bbb0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl_d0bbb0" xml:lang="en-US">Remaining available for borrowing</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CarryingReportedAmountsFairValueDisclosureMember" xlink:label="cxdo_CarryingReportedAmountsFairValueDisclosureMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CarryingReportedAmountsFairValueDisclosureMember" xlink:to="cxdo_CarryingReportedAmountsFairValueDisclosureMember_lbl_2fc0c3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CarryingReportedAmountsFairValueDisclosureMember_lbl_2fc0c3" xml:lang="en-US">Carrying Value</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EstimateOfFairValueFairValueDisclosuresMember" xlink:label="cxdo_EstimateOfFairValueFairValueDisclosuresMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_EstimateOfFairValueFairValueDisclosuresMember" xlink:to="cxdo_EstimateOfFairValueFairValueDisclosuresMember_lbl_cfdbe4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_EstimateOfFairValueFairValueDisclosuresMember_lbl_cfdbe4" xml:lang="en-US">Estimated Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableFairValueDisclosure" xlink:label="us-gaap_AccountsReceivableFairValueDisclosure" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableFairValueDisclosure" xlink:to="us-gaap_AccountsReceivableFairValueDisclosure_lbl_f02ef2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccountsReceivableFairValueDisclosure_lbl_f02ef2" xml:lang="en-US">Trade Receivables, Net</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivableFairValueDisclosure" xlink:label="cxdo_EquipmentFinancingReceivableFairValueDisclosure" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_EquipmentFinancingReceivableFairValueDisclosure" xlink:to="cxdo_EquipmentFinancingReceivableFairValueDisclosure_lbl_87129d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_EquipmentFinancingReceivableFairValueDisclosure_lbl_87129d" xml:lang="en-US">Equipment Financing Receivables</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FinanceLeasesFairValueDisclosure" xlink:label="cxdo_FinanceLeasesFairValueDisclosure" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_FinanceLeasesFairValueDisclosure" xlink:to="cxdo_FinanceLeasesFairValueDisclosure_lbl_8a9913" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_FinanceLeasesFairValueDisclosure_lbl_8a9913" xml:lang="en-US">Finance lease obligations</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NotesPayableFairValueDisclosure" xlink:to="us-gaap_NotesPayableFairValueDisclosure_lbl_44c6f8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_NotesPayableFairValueDisclosure_lbl_44c6f8" xml:lang="en-US">Notes Payable</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NotesPayableFairValueDisclosure" xlink:label="us-gaap_NotesPayableFairValueDisclosure" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NotesPayableFairValueDisclosure" xlink:to="us-gaap_NotesPayableFairValueDisclosure_lbl_5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NotesPayableFairValueDisclosure_lbl_5" xml:lang="en-US">[Notes Payable, Fair Value Disclosure]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl_5726a4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl_5726a4" xml:lang="en-US">Effective income tax rate</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DeferredTaxAssetValuationAllowance" xlink:label="cxdo_DeferredTaxAssetValuationAllowance" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DeferredTaxAssetValuationAllowance" xlink:to="cxdo_DeferredTaxAssetValuationAllowance_lbl_7b0612" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_DeferredTaxAssetValuationAllowance_lbl_7b0612" xml:lang="en-US">Valuation allowance</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DeferredTaxesRealizableAmount" xlink:label="cxdo_DeferredTaxesRealizableAmount" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DeferredTaxesRealizableAmount" xlink:to="cxdo_DeferredTaxesRealizableAmount_lbl_6491ed" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_DeferredTaxesRealizableAmount_lbl_6491ed" xml:lang="en-US">Deferred taxes, realizable amount</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncomeTaxBenefitProvisions" xlink:label="cxdo_IncomeTaxBenefitProvisions" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_IncomeTaxBenefitProvisions" xlink:to="cxdo_IncomeTaxBenefitProvisions_lbl_b524ec" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_IncomeTaxBenefitProvisions_lbl_b524ec" xml:lang="en-US">Income tax benefit/(provision)</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl_4fbeed" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl_4fbeed" xml:lang="en-US">Operating Leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl_ea3507" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl_ea3507" xml:lang="en-US">2025</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl_3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl_3" xml:lang="en-US">[Lessee, Operating Lease, Liability, to be Paid, Year One]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl_3675d4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl_3675d4" xml:lang="en-US">2026</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl_4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl_4" xml:lang="en-US">[Lessee, Operating Lease, Liability, to be Paid, Year Two]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl_f18d75" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl_f18d75" xml:lang="en-US">2027</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl_5" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl_5" xml:lang="en-US">[Lessee, Operating Lease, Liability, to be Paid, Year Three]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl_5a86ad" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl_5a86ad" xml:lang="en-US">2028</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl_6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl_6" xml:lang="en-US">[Lessee, Operating Lease, Liability, to be Paid, Year Four]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_lbl_9f4c52" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_lbl_9f4c52" xml:lang="en-US">2029</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_lbl_7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_lbl_7" xml:lang="en-US">[Lessee, Operating Lease, Liability, to be Paid, Year Five]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl_3a75eb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl_3a75eb" xml:lang="en-US">Total Minimum Lease Payment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl_fd6599" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl_fd6599" xml:lang="en-US">Less: Amount Representing Interest</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl_9" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl_9" xml:lang="en-US">[Lessee, Operating Lease, Liability, Undiscounted Excess Amount]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_lbl_345ba8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseLiability_lbl_345ba8" xml:lang="en-US">Present Value Of Minimum Lease Payments</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:label="us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract_lbl_fb3f81" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract_lbl_fb3f81" xml:lang="en-US">Finance Leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl_a27e3d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl_a27e3d" xml:lang="en-US">2025</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl_12" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths_lbl_12" xml:lang="en-US">[Finance Lease, Liability, to be Paid, Year One]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl_310645" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl_310645" xml:lang="en-US">2026</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl_13" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo_lbl_13" xml:lang="en-US">[Finance Lease, Liability, to be Paid, Year Two]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl_c092ad" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl_c092ad" xml:lang="en-US">2027</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl_14" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree_lbl_14" xml:lang="en-US">[Finance Lease, Liability, to be Paid, Year Three]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl_1188b2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl_1188b2" xml:lang="en-US">2028</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl_15" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour_lbl_15" xml:lang="en-US">[Finance Lease, Liability, to be Paid, Year Four]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_lbl_eb5c6e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_lbl_eb5c6e" xml:lang="en-US">2029</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_lbl_16" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive_lbl_16" xml:lang="en-US">[Finance Lease, Liability, to be Paid, Year Five]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl_72c4e8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl_72c4e8" xml:lang="en-US">Total Minimum Lease Payment</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl_17" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue_lbl_17" xml:lang="en-US">[Finance Lease, Liability, to be Paid]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl_8792fb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl_8792fb" xml:lang="en-US">Less: Amount Representing Interest</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl_18" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount_lbl_18" xml:lang="en-US">[Finance Lease, Liability, Undiscounted Excess Amount]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability_lbl_70dfb0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_FinanceLeaseLiability_lbl_70dfb0" xml:lang="en-US">Present Value Of Minimum Lease Payments</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability_lbl_19" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseLiability_lbl_19" xml:lang="en-US">[Finance Lease, Liability]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OperatingLeaseWeightedAverageRemainingLeaseTerm" xlink:label="cxdo_OperatingLeaseWeightedAverageRemainingLeaseTerm" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_OperatingLeaseWeightedAverageRemainingLeaseTerm" xlink:to="cxdo_OperatingLeaseWeightedAverageRemainingLeaseTerm_lbl_d03da0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_OperatingLeaseWeightedAverageRemainingLeaseTerm_lbl_d03da0" xml:lang="en-US">Weighted-average Remaining Lease Term - Operating Leases</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FinanceLeaseWeightedAverageRemainingLeaseTerm" xlink:label="cxdo_FinanceLeaseWeightedAverageRemainingLeaseTerm" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_FinanceLeaseWeightedAverageRemainingLeaseTerm" xlink:to="cxdo_FinanceLeaseWeightedAverageRemainingLeaseTerm_lbl_f247c7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_FinanceLeaseWeightedAverageRemainingLeaseTerm_lbl_f247c7" xml:lang="en-US">Weighted-average Remaining Lease Term - Finance Leases</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl_0e4a41" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl_0e4a41" xml:lang="en-US">Weighted-average Discount Rate - Operating Leases</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent_lbl_df1f0c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent_lbl_df1f0c" xml:lang="en-US">Weighted-average Discount Rate- Finance Leases</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OperatingCashFlowsFromOperatingLeases" xlink:label="cxdo_OperatingCashFlowsFromOperatingLeases" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_OperatingCashFlowsFromOperatingLeases" xlink:to="cxdo_OperatingCashFlowsFromOperatingLeases_lbl_d990ea" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_OperatingCashFlowsFromOperatingLeases_lbl_d990ea" xml:lang="en-US">Operating Cash Flows From Operating Leases</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OperatingCashFlowsFromFinanceLeases" xlink:label="cxdo_OperatingCashFlowsFromFinanceLeases" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_OperatingCashFlowsFromFinanceLeases" xlink:to="cxdo_OperatingCashFlowsFromFinanceLeases_lbl_ccfc6b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_OperatingCashFlowsFromFinanceLeases_lbl_ccfc6b" xml:lang="en-US">Operating Cash Flows From Finance Leases</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FinancingCashFlowsFromFinanceLeases" xlink:label="cxdo_FinancingCashFlowsFromFinanceLeases" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_FinancingCashFlowsFromFinanceLeases" xlink:to="cxdo_FinancingCashFlowsFromFinanceLeases_lbl_7186ec" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_FinancingCashFlowsFromFinanceLeases_lbl_7186ec" xml:lang="en-US">Financing Cash Flows From Finance Leases</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:to="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl_817a7d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NoncashInvestingAndFinancingItemsAbstract_lbl_817a7d" xml:lang="en-US">Non-cash investing and financing activities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl_fb9278" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl_fb9278" xml:lang="en-US">Additions to ROU assets obtained from New operating lease liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability_lbl_d3e7a9" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability_lbl_d3e7a9" xml:lang="en-US">Additions to ROU assets obtained from New finance lease liabilities</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RestatementAxis" xlink:label="srt_RestatementAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RestatementAxis" xlink:to="srt_RestatementAxis_lbl_6a6fe3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_RestatementAxis_lbl_6a6fe3" xml:lang="en-US">Revision of Prior Period [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ScenarioPreviouslyReportedMember" xlink:label="srt_ScenarioPreviouslyReportedMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ScenarioPreviouslyReportedMember" xlink:to="srt_ScenarioPreviouslyReportedMember_lbl_658127" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ScenarioPreviouslyReportedMember_lbl_658127" xml:lang="en-US">As Previously Reported [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TempeArizoneMember" xlink:label="cxdo_TempeArizoneMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_TempeArizoneMember" xlink:to="cxdo_TempeArizoneMember_lbl_d88195" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_TempeArizoneMember_lbl_d88195" xml:lang="en-US">Tempe Arizona [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RestonVirginiaMember" xlink:label="cxdo_RestonVirginiaMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_RestonVirginiaMember" xlink:to="cxdo_RestonVirginiaMember_lbl_43212a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_RestonVirginiaMember_lbl_43212a" xml:lang="en-US">Reston, Virginia [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SanDiegoCaliforniaMember" xlink:label="cxdo_SanDiegoCaliforniaMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_SanDiegoCaliforniaMember" xlink:to="cxdo_SanDiegoCaliforniaMember_lbl_db50a9" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_SanDiegoCaliforniaMember_lbl_db50a9" xml:lang="en-US">San Diego, California [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OverlandParkKansasMember" xlink:label="cxdo_OverlandParkKansasMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_OverlandParkKansasMember" xlink:to="cxdo_OverlandParkKansasMember_lbl_e245aa" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_OverlandParkKansasMember_lbl_e245aa" xml:lang="en-US">Overland Park, Kansas [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_MichiganLasVegasMember" xlink:label="cxdo_MichiganLasVegasMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_MichiganLasVegasMember" xlink:to="cxdo_MichiganLasVegasMember_lbl_7a4a49" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_MichiganLasVegasMember_lbl_7a4a49" xml:lang="en-US">Michigan Las Vegas Member</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OtherOperatingLeasesMember" xlink:label="cxdo_OtherOperatingLeasesMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_OtherOperatingLeasesMember" xlink:to="cxdo_OtherOperatingLeasesMember_lbl_f7c5c2" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_OtherOperatingLeasesMember_lbl_f7c5c2" xml:lang="en-US">Other Operating Leases [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OctoberTwoThousandTwentyFourMember" xlink:label="cxdo_OctoberTwoThousandTwentyFourMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_OctoberTwoThousandTwentyFourMember" xlink:to="cxdo_OctoberTwoThousandTwentyFourMember_lbl_a47dbb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_OctoberTwoThousandTwentyFourMember_lbl_a47dbb" xml:lang="en-US">October, 2024 [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_BottomMember" xlink:to="cxdo_BottomMember_lbl_d3e80e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="cxdo_BottomMember_lbl_d3e80e" xml:lang="en-US">Minimum [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability_lbl_0a652d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_FinanceLeaseLiability_lbl_0a652d" xml:lang="en-US">Finance lease</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:to="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_lbl_f977c3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_lbl_f977c3" xml:lang="en-US">Assets classified as property and equipment under finance lease obligations</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentOwnedAccumulatedDepreciation" xlink:label="us-gaap_PropertyPlantAndEquipmentOwnedAccumulatedDepreciation" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentOwnedAccumulatedDepreciation" xlink:to="us-gaap_PropertyPlantAndEquipmentOwnedAccumulatedDepreciation_lbl_82d7ed" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_PropertyPlantAndEquipmentOwnedAccumulatedDepreciation_lbl_82d7ed" xml:lang="en-US">Related accumulated depreciation</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherExpenses" xlink:label="us-gaap_OtherExpenses" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherExpenses" xlink:to="us-gaap_OtherExpenses_lbl_2563fc" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherExpenses_lbl_2563fc" xml:lang="en-US">Prepaid expense</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses" xlink:label="cxdo_AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses" xlink:to="cxdo_AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses_lbl_192526" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses_lbl_192526" xml:lang="en-US">Amortization Expense Included In General And Administrative Expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InterestRateFinanceLeases" xlink:label="cxdo_InterestRateFinanceLeases" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_InterestRateFinanceLeases" xlink:to="cxdo_InterestRateFinanceLeases_lbl_13a7cb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_InterestRateFinanceLeases_lbl_13a7cb" xml:lang="en-US">Interest Rate- Finance Leases</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestExpenseDebt" xlink:label="us-gaap_InterestExpenseDebt" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpenseDebt" xlink:to="us-gaap_InterestExpenseDebt_lbl_71f9f3" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestExpenseDebt_lbl_71f9f3" xml:lang="en-US">Interest Expense</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseExpense" xlink:label="us-gaap_OperatingLeaseExpense" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseExpense" xlink:to="us-gaap_OperatingLeaseExpense_lbl_e4b0ef" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OperatingLeaseExpense_lbl_e4b0ef" xml:lang="en-US">Rental Expense Incurred On Operating Leases</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DescriptionOfleaseExpiryDate" xlink:label="cxdo_DescriptionOfleaseExpiryDate" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DescriptionOfleaseExpiryDate" xlink:to="cxdo_DescriptionOfleaseExpiryDate_lbl_856ede" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_DescriptionOfleaseExpiryDate_lbl_856ede" xml:lang="en-US">Description Of lease Expiry Date</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncrementalBorrowingRate" xlink:label="cxdo_IncrementalBorrowingRate" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_IncrementalBorrowingRate" xlink:to="cxdo_IncrementalBorrowingRate_lbl_16e5d8" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_IncrementalBorrowingRate_lbl_16e5d8" xml:lang="en-US">Incremental borrowing rate</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InterestExpenseOnMonthlyRentDepositLiabilitiesDescription" xlink:label="cxdo_InterestExpenseOnMonthlyRentDepositLiabilitiesDescription" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_InterestExpenseOnMonthlyRentDepositLiabilitiesDescription" xlink:to="cxdo_InterestExpenseOnMonthlyRentDepositLiabilitiesDescription_lbl_37d03b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_InterestExpenseOnMonthlyRentDepositLiabilitiesDescription_lbl_37d03b" xml:lang="en-US">Monthly rent description</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OperatingCostsAndExpencesDescription" xlink:label="cxdo_OperatingCostsAndExpencesDescription" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_OperatingCostsAndExpencesDescription" xlink:to="cxdo_OperatingCostsAndExpencesDescription_lbl_fc9c6f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_OperatingCostsAndExpencesDescription_lbl_fc9c6f" xml:lang="en-US">Operating Costs description</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostsAndExpenses" xlink:label="us-gaap_CostsAndExpenses" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostsAndExpenses" xlink:to="us-gaap_CostsAndExpenses_lbl_96ea49" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_CostsAndExpenses_lbl_96ea49" xml:lang="en-US">Cost of product</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:to="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_lbl_9b1fd4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_RelatedPartyTransactionsByRelatedPartyAxis_lbl_9b1fd4" xml:lang="en-US">Related Party Transactions By Related Party Axis</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OracleMemberMember" xlink:label="cxdo_OracleMemberMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_OracleMemberMember" xlink:to="cxdo_OracleMemberMember_lbl_59a70f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_OracleMemberMember_lbl_59a70f" xml:lang="en-US">Oracle [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DecemberThirtyOneTwoThousandTwentyFourMember" xlink:label="cxdo_DecemberThirtyOneTwoThousandTwentyFourMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DecemberThirtyOneTwoThousandTwentyFourMember" xlink:to="cxdo_DecemberThirtyOneTwoThousandTwentyFourMember_lbl_bf5a1d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_DecemberThirtyOneTwoThousandTwentyFourMember_lbl_bf5a1d" xml:lang="en-US">December 31 2024 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BonusPlanMember" xlink:label="cxdo_BonusPlanMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_BonusPlanMember" xlink:to="cxdo_BonusPlanMember_lbl_b01512" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_BonusPlanMember_lbl_b01512" xml:lang="en-US">Bonus Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BoardOfDirectorsMember" xlink:label="cxdo_BoardOfDirectorsMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_BoardOfDirectorsMember" xlink:to="cxdo_BoardOfDirectorsMember_lbl_a8694f" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_BoardOfDirectorsMember_lbl_a8694f" xml:lang="en-US">Board Of Directors [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PurchaseObligation" xlink:to="us-gaap_PurchaseObligation_lbl_3d5ace" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_PurchaseObligation_lbl_3d5ace" xml:lang="en-US">Purchase obligation</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BonusDescription" xlink:label="cxdo_BonusDescription" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_BonusDescription" xlink:to="cxdo_BonusDescription_lbl_15ad24" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_BonusDescription_lbl_15ad24" xml:lang="en-US">Bonus description</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BonusAwardDescription" xlink:label="cxdo_BonusAwardDescription" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_BonusAwardDescription" xlink:to="cxdo_BonusAwardDescription_lbl_542cd0" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_BonusAwardDescription_lbl_542cd0" xml:lang="en-US">Bonus Award Description</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ServiceContractAmount" xlink:label="cxdo_ServiceContractAmount" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_ServiceContractAmount" xlink:to="cxdo_ServiceContractAmount_lbl_be0338" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_ServiceContractAmount_lbl_be0338" xml:lang="en-US">Non cancellable service contract amount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccretionExpense" xlink:to="us-gaap_AccretionExpense_lbl_2ebc3b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_AccretionExpense_lbl_2ebc3b" xml:lang="en-US">Accrued expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccretionExpense" xlink:label="us-gaap_AccretionExpense" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccretionExpense" xlink:to="us-gaap_AccretionExpense_lbl_6" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_AccretionExpense_lbl_6" xml:lang="en-US">[Accretion Expense]</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DescriptionRelatedToNoncancellableServiceContractFutureAmount" xlink:label="cxdo_DescriptionRelatedToNoncancellableServiceContractFutureAmount" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_DescriptionRelatedToNoncancellableServiceContractFutureAmount" xlink:to="cxdo_DescriptionRelatedToNoncancellableServiceContractFutureAmount_lbl_a3ab4c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_DescriptionRelatedToNoncancellableServiceContractFutureAmount_lbl_a3ab4c" xml:lang="en-US">Description related to noncancellable service contract</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductOrServiceAxis_lbl_87e00a" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="srt_ProductOrServiceAxis_lbl_87e00a" xml:lang="en-US">Product Or Service Axis</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ServiceMember" xlink:label="us-gaap_ServiceMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ServiceMember" xlink:to="us-gaap_ServiceMember_lbl_35149e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ServiceMember_lbl_35149e" xml:lang="en-US">Service</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CloudTelecommunicationsServiceSegmentMember" xlink:label="cxdo_CloudTelecommunicationsServiceSegmentMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_CloudTelecommunicationsServiceSegmentMember" xlink:to="cxdo_CloudTelecommunicationsServiceSegmentMember_lbl_bac0ac" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_CloudTelecommunicationsServiceSegmentMember_lbl_bac0ac" xml:lang="en-US">Cloud Telecommunications Service Segment</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionSegmentMember" xlink:label="cxdo_SoftwareSolutionSegmentMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_SoftwareSolutionSegmentMember" xlink:to="cxdo_SoftwareSolutionSegmentMember_lbl_d49b59" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_SoftwareSolutionSegmentMember_lbl_d49b59" xml:lang="en-US">Software Solution Segment</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="us-gaap_SoftwareDevelopmentMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SoftwareDevelopmentMember" xlink:to="us-gaap_SoftwareDevelopmentMember_lbl_18c0bc" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SoftwareDevelopmentMember_lbl_18c0bc" xml:lang="en-US">Software Solutions</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductMember" xlink:label="us-gaap_ProductMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductMember" xlink:to="us-gaap_ProductMember_lbl_ee308e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProductMember_lbl_ee308e" xml:lang="en-US">Product</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_Revenues_lbl_9ad36e" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_Revenues_lbl_9ad36e" xml:lang="en-US">Total revenue</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpensesAbstract" xlink:to="us-gaap_OperatingExpensesAbstract_lbl_128a25" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingExpensesAbstract_lbl_128a25" xml:lang="en-US">Operating expenses:</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeBenefitsAndShareBasedCompensation" xlink:label="us-gaap_EmployeeBenefitsAndShareBasedCompensation" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeBenefitsAndShareBasedCompensation" xlink:to="us-gaap_EmployeeBenefitsAndShareBasedCompensation_lbl_a89baf" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_EmployeeBenefitsAndShareBasedCompensation_lbl_a89baf" xml:lang="en-US">Employee expenses</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoninterestExpenseCommissionExpense" xlink:label="us-gaap_NoninterestExpenseCommissionExpense" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NoninterestExpenseCommissionExpense" xlink:to="us-gaap_NoninterestExpenseCommissionExpense_lbl_234ac4" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_NoninterestExpenseCommissionExpense_lbl_234ac4" xml:lang="en-US">Commissions</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfessionalAndContractServicesExpense" xlink:label="us-gaap_ProfessionalAndContractServicesExpense" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfessionalAndContractServicesExpense" xlink:to="us-gaap_ProfessionalAndContractServicesExpense_lbl_37cbcc" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_ProfessionalAndContractServicesExpense_lbl_37cbcc" xml:lang="en-US">Contractor expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherDepreciationAndAmortization" xlink:to="us-gaap_OtherDepreciationAndAmortization_lbl_50c249" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OtherDepreciationAndAmortization_lbl_50c249" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherDepreciationAndAmortization" xlink:label="us-gaap_OtherDepreciationAndAmortization" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherDepreciationAndAmortization" xlink:to="us-gaap_OtherDepreciationAndAmortization_lbl_7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherDepreciationAndAmortization_lbl_7" xml:lang="en-US">[Other Depreciation and Amortization]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingOtherItemAmount" xlink:label="us-gaap_SegmentReportingOtherItemAmount" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingOtherItemAmount" xlink:to="us-gaap_SegmentReportingOtherItemAmount_lbl_dc9f94" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_SegmentReportingOtherItemAmount_lbl_dc9f94" xml:lang="en-US">Other segment items(1)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingExpenses" xlink:to="us-gaap_OperatingExpenses_lbl_35ffd7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingExpenses_lbl_35ffd7" xml:lang="en-US">Total operating expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl_837359" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_OperatingIncomeLoss_lbl_837359" xml:lang="en-US">Segment income/(loss) from operations</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestIncomeOther" xlink:to="us-gaap_InterestIncomeOther_lbl_5f9e9c" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_InterestIncomeOther_lbl_5f9e9c" xml:lang="en-US">Interest income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestIncomeExpenseNet" xlink:to="us-gaap_InterestIncomeExpenseNet_lbl_b4d68b" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_InterestIncomeExpenseNet_lbl_b4d68b" xml:lang="en-US">Interest expense</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeExpenseNet" xlink:label="us-gaap_InterestIncomeExpenseNet" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestIncomeExpenseNet" xlink:to="us-gaap_InterestIncomeExpenseNet_lbl_12" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_InterestIncomeExpenseNet_lbl_12" xml:lang="en-US">[Interest Income (Expense), Operating]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherOperatingIncomeExpenseNet" xlink:label="us-gaap_OtherOperatingIncomeExpenseNet" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherOperatingIncomeExpenseNet" xlink:to="us-gaap_OtherOperatingIncomeExpenseNet_lbl_e6e01d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_OtherOperatingIncomeExpenseNet_lbl_e6e01d" xml:lang="en-US">Other income/(expense)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl_0ccf76" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl_0ccf76" xml:lang="en-US">Income (loss) before income tax</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="us-gaap_IncomeTaxAuthorityNameAxis" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxAuthorityNameAxis" xlink:to="us-gaap_IncomeTaxAuthorityNameAxis_lbl_87e4d7" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="us-gaap_IncomeTaxAuthorityNameAxis_lbl_87e4d7" xml:lang="en-US">Income Tax Authority Name Axis</link:label>
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InternationalMember" xlink:label="cxdo_InternationalMember" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="cxdo_InternationalMember" xlink:to="cxdo_InternationalMember_lbl_82b3fb" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="cxdo_InternationalMember_lbl_82b3fb" xml:lang="en-US">International [Member]</link:label>
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="country_US" />
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_US" xlink:to="country_US_lbl_0412ae" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="country_US_lbl_0412ae" xml:lang="en-US">United State [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Revenues" xlink:to="us-gaap_Revenues_lbl_99bd7d" xlink:type="arc" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:label="us-gaap_Revenues_lbl_99bd7d" xml:lang="en-US">Revenues</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:type="arc" xlink:from="cxdo_IncreaseDecreaseInEquipmentFinancingReceivables" xlink:to="cxdo_IncreaseDecreaseInEquipmentFinancingReceivables_d" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xml:lang="en-US" xlink:label="cxdo_IncreaseDecreaseInEquipmentFinancingReceivables_d">Liabilities relating to legal proceedings</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:type="arc" xlink:from="cxdo_EquipmentFinancingReceivables" xlink:to="cxdo_EquipmentFinancingReceivables_d" />
    <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/documentation" xml:lang="en-US" xlink:label="cxdo_EquipmentFinancingReceivables_d">Liabilities relating to legal proceedings</link:label>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>8
<FILENAME>cxdo-20250331_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii" standalone="yes"?>
<!--XBRL Document Created with XBRLMaster-->
<!--Version: 2.3.08-->
<!--Based on XBRL 2.1-->
<!--Date of creation: 05/05/2025-->
<!--Software architectural design and coding: A'c Dharmapremananda Avt.-->
<!--Copyright (c) 2025 I-NET Business Solutions, Inc. All Rights Reserved.-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://cxdo.com/role/Cover" xlink:href="cxdo-20250331.xsd#Cover" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedBalanceSheets" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedBalanceSheets" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedStatementsOfOperationsUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited" xlink:href="cxdo-20250331.xsd#ConsolidatedStatementsOfStockholdersEquityUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPolicies" xlink:href="cxdo-20250331.xsd#SignificantAccountingPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/Revenue" xlink:href="cxdo-20250331.xsd#Revenue" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EarningsPerCommonShare" xlink:href="cxdo-20250331.xsd#EarningsPerCommonShare" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLosses" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLosses" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLosses" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLosses" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PrepaidExpenses" xlink:href="cxdo-20250331.xsd#PrepaidExpenses" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PropertyAndEquipment" xlink:href="cxdo-20250331.xsd#PropertyAndEquipment" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwill" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwill" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpenses" xlink:href="cxdo-20250331.xsd#AccruedExpenses" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayable" xlink:href="cxdo-20250331.xsd#NotesPayable" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LineOfCredit" xlink:href="cxdo-20250331.xsd#LineOfCredit" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/FairValueMeasurements" xlink:href="cxdo-20250331.xsd#FairValueMeasurements" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IncomeTaxes" xlink:href="cxdo-20250331.xsd#IncomeTaxes" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/Leases" xlink:href="cxdo-20250331.xsd#Leases" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CommitmentsAndContingencies" xlink:href="cxdo-20250331.xsd#CommitmentsAndContingencies" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SegmentReporting" xlink:href="cxdo-20250331.xsd#SegmentReporting" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesPolicies" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesTables" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueTables" xlink:href="cxdo-20250331.xsd#RevenueTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EarningsPerCommonShareTables" xlink:href="cxdo-20250331.xsd#EarningsPerCommonShareTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLossesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PrepaidExpensesTables" xlink:href="cxdo-20250331.xsd#PrepaidExpensesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PropertyAndEquipmentTables" xlink:href="cxdo-20250331.xsd#PropertyAndEquipmentTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillTables" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpensesTables" xlink:href="cxdo-20250331.xsd#AccruedExpensesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayableTables" xlink:href="cxdo-20250331.xsd#NotesPayableTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/FairValueMeasurementsTables" xlink:href="cxdo-20250331.xsd#FairValueMeasurementsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesTables" xlink:href="cxdo-20250331.xsd#LeasesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SegmentsTables" xlink:href="cxdo-20250331.xsd#SegmentsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesDetails" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesDetails1" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails" xlink:href="cxdo-20250331.xsd#RevenueDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails1" xlink:href="cxdo-20250331.xsd#RevenueDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails2" xlink:href="cxdo-20250331.xsd#RevenueDetails2" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails3" xlink:href="cxdo-20250331.xsd#RevenueDetails3" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails4" xlink:href="cxdo-20250331.xsd#RevenueDetails4" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails5" xlink:href="cxdo-20250331.xsd#RevenueDetails5" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetailsNarrative" xlink:href="cxdo-20250331.xsd#RevenueDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EarningsPerCommonShareDetails" xlink:href="cxdo-20250331.xsd#EarningsPerCommonShareDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EarningsPerCommonShareDetails1" xlink:href="cxdo-20250331.xsd#EarningsPerCommonShareDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLossesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails1" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLossesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PrepaidExpensesDetails" xlink:href="cxdo-20250331.xsd#PrepaidExpensesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PropertyAndEquipmentDetails" xlink:href="cxdo-20250331.xsd#PropertyAndEquipmentDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PropertyAndEquipmentDetailsNarrative" xlink:href="cxdo-20250331.xsd#PropertyAndEquipmentDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails2" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillDetails2" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpensesDetails" xlink:href="cxdo-20250331.xsd#AccruedExpensesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpensesDetails1" xlink:href="cxdo-20250331.xsd#AccruedExpensesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpensesDetailsNarrative" xlink:href="cxdo-20250331.xsd#AccruedExpensesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayableDetails" xlink:href="cxdo-20250331.xsd#NotesPayableDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayableDetails1" xlink:href="cxdo-20250331.xsd#NotesPayableDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayableDetailsNarrative" xlink:href="cxdo-20250331.xsd#NotesPayableDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LineOfCreditDetailsNarrative" xlink:href="cxdo-20250331.xsd#LineOfCreditDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/FairValueMeasurementsDetails" xlink:href="cxdo-20250331.xsd#FairValueMeasurementsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IncomeTaxesDetailsNarrative" xlink:href="cxdo-20250331.xsd#IncomeTaxesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesDetails" xlink:href="cxdo-20250331.xsd#LeasesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesDetails1" xlink:href="cxdo-20250331.xsd#LeasesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesDetails2" xlink:href="cxdo-20250331.xsd#LeasesDetails2" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesDetailsNarrative" xlink:href="cxdo-20250331.xsd#LeasesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative" xlink:href="cxdo-20250331.xsd#CommitmentsAndContingenciesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SegmentReportingDetails" xlink:href="cxdo-20250331.xsd#SegmentReportingDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SegmentReportingDetails1" xlink:href="cxdo-20250331.xsd#SegmentReportingDetails1" xlink:type="simple" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/Cover" xlink:title="00000001 - Document - Document and Entity Information" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedBalanceSheets" xlink:title="110200 - Statement - Condensed Consolidated Balance Sheets">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaapAssetsCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent" />
    <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapAccountsReceivableNetCurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet" />
    <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapInventoryNet" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivables" xlink:label="loc_cxdoEquipmentFinancingReceivables" />
    <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_cxdoEquipmentFinancingReceivables" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="loc_us-gaapCapitalizedContractCostNet" />
    <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapCapitalizedContractCostNet" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="loc_us-gaapPrepaidExpenseCurrent" />
    <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapPrepaidExpenseCurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReceivable" xlink:label="loc_us-gaapIncomeTaxReceivable" />
    <link:calculationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapIncomeTaxReceivable" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsCurrent" xlink:label="loc_us-gaapOtherAssetsCurrent" />
    <link:calculationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssetsCurrent" xlink:to="loc_us-gaapOtherAssetsCurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="loc_us-gaapAssets" />
    <link:calculationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapAssetsCurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:label="loc_us-gaapContractWithCustomerAssetNetNoncurrent" />
    <link:calculationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapContractWithCustomerAssetNetNoncurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_LongTermEquipmentFinancingReceivables" xlink:label="loc_cxdoLongTermEquipmentFinancingReceivables" />
    <link:calculationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_cxdoLongTermEquipmentFinancingReceivables" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet" />
    <link:calculationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaapOperatingLeaseRightOfUseAsset" />
    <link:calculationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapOperatingLeaseRightOfUseAsset" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" />
    <link:calculationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapIntangibleAssetsNetExcludingGoodwill" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill" />
    <link:calculationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapGoodwill" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalizedContractCostNetNoncurrent" xlink:label="loc_us-gaapCapitalizedContractCostNetNoncurrent" />
    <link:calculationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapCapitalizedContractCostNetNoncurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaapOtherAssetsNoncurrent" />
    <link:calculationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapAssets" xlink:to="loc_us-gaapOtherAssetsNoncurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaapLiabilitiesCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaapAccountsPayableCurrent" />
    <link:calculationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapAccountsPayableCurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaapAccruedLiabilitiesCurrent" />
    <link:calculationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapAccruedLiabilitiesCurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="loc_us-gaapFinanceLeaseLiabilityCurrent" />
    <link:calculationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapFinanceLeaseLiabilityCurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NotesPayableCurrent" xlink:label="loc_us-gaapNotesPayableCurrent" />
    <link:calculationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapNotesPayableCurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityCurrent" />
    <link:calculationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapOperatingLeaseLiabilityCurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxesPayableCurrent" xlink:label="loc_us-gaapTaxesPayableCurrent" />
    <link:calculationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapTaxesPayableCurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityCurrent" />
    <link:calculationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesCurrent" xlink:to="loc_us-gaapContractWithCustomerLiabilityCurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaapLiabilities" />
    <link:calculationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilities" xlink:to="loc_us-gaapLiabilitiesCurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityNoncurrent" />
    <link:calculationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilities" xlink:to="loc_us-gaapContractWithCustomerLiabilityNoncurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:label="loc_us-gaapFinanceLeaseLiabilityNoncurrent" />
    <link:calculationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilities" xlink:to="loc_us-gaapFinanceLeaseLiabilityNoncurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermNotesPayable" xlink:label="loc_us-gaapLongTermNotesPayable" />
    <link:calculationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilities" xlink:to="loc_us-gaapLongTermNotesPayable" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityNoncurrent" />
    <link:calculationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilities" xlink:to="loc_us-gaapOperatingLeaseLiabilityNoncurrent" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaapPreferredStockValue" />
    <link:calculationArc order="31" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapPreferredStockValue" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaapCommonStockValue" />
    <link:calculationArc order="32" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapCommonStockValue" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="loc_us-gaapAdditionalPaidInCapital" />
    <link:calculationArc order="33" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapAdditionalPaidInCapital" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaapRetainedEarningsAccumulatedDeficit" />
    <link:calculationArc order="34" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapRetainedEarningsAccumulatedDeficit" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" />
    <link:calculationArc order="35" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapStockholdersEquity" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaapLiabilitiesAndStockholdersEquity" />
    <link:calculationArc order="36" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquity" xlink:to="loc_us-gaapLiabilities" xlink:type="arc" weight="1" />
    <link:calculationArc order="37" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapLiabilitiesAndStockholdersEquity" xlink:to="loc_us-gaapStockholdersEquity" xlink:type="arc" weight="1" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:title="110201 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" xlink:title="124100 - Statement - Condensed Consolidated Statements of Operations (Unaudited)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Revenues" xlink:label="loc_us-gaapRevenues" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ServiceRevenue" xlink:label="loc_cxdoServiceRevenue" />
    <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapRevenues" xlink:to="loc_cxdoServiceRevenue" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionsRevenue" xlink:label="loc_cxdoSoftwareSolutionsRevenue" />
    <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapRevenues" xlink:to="loc_cxdoSoftwareSolutionsRevenue" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ProductRevenue" xlink:label="loc_cxdoProductRevenue" />
    <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapRevenues" xlink:to="loc_cxdoProductRevenue" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaapOperatingExpenses" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfServiceRevenue" xlink:label="loc_cxdoCostOfServiceRevenue" />
    <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_cxdoCostOfServiceRevenue" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfSoftwareSolutionsRevenue" xlink:label="loc_cxdoCostOfSoftwareSolutionsRevenue" />
    <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_cxdoCostOfSoftwareSolutionsRevenue" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfProductRevenue" xlink:label="loc_cxdoCostOfProductRevenue" />
    <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_cxdoCostOfProductRevenue" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaapSellingAndMarketingExpense" />
    <link:calculationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapSellingAndMarketingExpense" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaapGeneralAndAdministrativeExpense" />
    <link:calculationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapGeneralAndAdministrativeExpense" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaapResearchAndDevelopmentExpense" />
    <link:calculationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingExpenses" xlink:to="loc_us-gaapResearchAndDevelopmentExpense" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaapOperatingIncomeLoss" />
    <link:calculationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingIncomeLoss" xlink:to="loc_us-gaapRevenues" xlink:type="arc" weight="1" />
    <link:calculationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOperatingIncomeLoss" xlink:to="loc_us-gaapOperatingExpenses" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaapNonoperatingIncomeExpense" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeOther" xlink:label="loc_us-gaapInterestIncomeOther" />
    <link:calculationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNonoperatingIncomeExpense" xlink:to="loc_us-gaapInterestIncomeOther" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestExpenseOther" xlink:label="loc_us-gaapInterestExpenseOther" />
    <link:calculationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNonoperatingIncomeExpense" xlink:to="loc_us-gaapInterestExpenseOther" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaapOtherNonoperatingIncomeExpense" />
    <link:calculationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNonoperatingIncomeExpense" xlink:to="loc_us-gaapOtherNonoperatingIncomeExpense" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:calculationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaapOperatingIncomeLoss" xlink:type="arc" weight="1" />
    <link:calculationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="loc_us-gaapNonoperatingIncomeExpense" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
    <link:calculationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetIncomeLoss" xlink:to="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
    <link:calculationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetIncomeLoss" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit" xlink:type="arc" weight="-1" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" xlink:title="148400 - Statement - Condensed Consolidated Statements of Comprehensive Income(Loss) (Unaudited)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossNetOfTax" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapOtherComprehensiveIncomeLossNetOfTax" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTax" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
    <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTax" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" weight="1" />
    <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTax" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" weight="1" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited" xlink:title="148600 - Statement - Consolidated Statements of Stockholders' Equity (Unaudited)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:title="170000 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
    <link:calculationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapNetIncomeLoss" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationAndAmortization" xlink:label="loc_us-gaapDepreciationAndAmortization" />
    <link:calculationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapDepreciationAndAmortization" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLosses" xlink:label="loc_cxdoAllowanceForCreditLosses" />
    <link:calculationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_cxdoAllowanceForCreditLosses" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaapShareBasedCompensation" />
    <link:calculationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapShareBasedCompensation" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="loc_us-gaapOtherNoncashIncomeExpense" />
    <link:calculationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapOtherNoncashIncomeExpense" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsReceivable" />
    <link:calculationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsReceivable" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="loc_us-gaapIncreaseDecreaseInContractWithCustomerAsset" />
    <link:calculationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInContractWithCustomerAsset" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncreaseDecreaseInEquipmentFinancingReceivables" xlink:label="loc_cxdoIncreaseDecreaseInEquipmentFinancingReceivables" />
    <link:calculationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_cxdoIncreaseDecreaseInEquipmentFinancingReceivables" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaapIncreaseDecreaseInInventories" />
    <link:calculationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInInventories" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncreaseDecreaseInContractCosts" xlink:label="loc_cxdoIncreaseDecreaseInContractCosts" />
    <link:calculationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_cxdoIncreaseDecreaseInContractCosts" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="loc_us-gaapIncreaseDecreaseInPrepaidExpense" />
    <link:calculationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInPrepaidExpense" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="loc_us-gaapIncreaseDecreaseInIncomeTaxesReceivable" />
    <link:calculationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInIncomeTaxesReceivable" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="loc_us-gaapIncreaseDecreaseInOtherOperatingAssets" />
    <link:calculationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInOtherOperatingAssets" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities" />
    <link:calculationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" />
    <link:calculationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="loc_us-gaapIncreaseDecreaseInContractWithCustomerLiability" />
    <link:calculationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:to="loc_us-gaapIncreaseDecreaseInContractWithCustomerLiability" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" />
    <link:calculationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:to="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="loc_us-gaapFinanceLeasePrincipalPayments" />
    <link:calculationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapFinanceLeasePrincipalPayments" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfNotesPayable" xlink:label="loc_us-gaapRepaymentsOfNotesPayable" />
    <link:calculationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapRepaymentsOfNotesPayable" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="loc_us-gaapProceedsFromStockOptionsExercised" />
    <link:calculationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_us-gaapProceedsFromStockOptionsExercised" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus" xlink:label="loc_cxdoTaxesPaidOnTheNetSettlementOfStockOptionAndRsus" />
    <link:calculationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:to="loc_cxdoTaxesPaidOnTheNetSettlementOfStockOptionAndRsus" xlink:type="arc" weight="-1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
    <link:calculationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapNetCashProvidedByUsedInOperatingActivities" xlink:type="arc" weight="1" />
    <link:calculationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapNetCashProvidedByUsedInInvestingActivities" xlink:type="arc" weight="1" />
    <link:calculationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapNetCashProvidedByUsedInFinancingActivities" xlink:type="arc" weight="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaapEffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:calculationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="loc_us-gaapEffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" weight="1" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPolicies" xlink:title="290000 - Disclosure - Significant Accounting Policies" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/Revenue" xlink:title="290001 - Disclosure - Revenue" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EarningsPerCommonShare" xlink:title="290002 - Disclosure - Earnings Per Common Share" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLosses" xlink:title="290003 - Disclosure - Trade Receivables and Allowance for Credit Losses" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLosses" xlink:title="290004 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PrepaidExpenses" xlink:title="290005 - Disclosure - Prepaid Expenses" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PropertyAndEquipment" xlink:title="290006 - Disclosure - Property and Equipment" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwill" xlink:title="370000 - Disclosure - Intangible Assets and Goodwill" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpenses" xlink:title="400000 - Disclosure - Accrued Expenses" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayable" xlink:title="460000 - Disclosure - Notes Payable" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LineOfCredit" xlink:title="460001 - Disclosure - Line of Credit" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/FairValueMeasurements" xlink:title="815000 - Disclosure - Fair Value Measurements" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IncomeTaxes" xlink:title="815001 - Disclosure - Income Taxes" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/Leases" xlink:title="842000 - Disclosure - Leases" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CommitmentsAndContingencies" xlink:title="842001 - Disclosure - Commitments and Contingencies" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SegmentReporting" xlink:title="842002 - Disclosure - Segment Reporting" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesPolicies" xlink:title="842003 - Disclosure - Significant Accounting Policies (Policies)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesTables" xlink:title="842004 - Disclosure - Significant Accounting Policies (Tables)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueTables" xlink:title="842005 - Disclosure - Revenue (Tables)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EarningsPerCommonShareTables" xlink:title="842006 - Disclosure - Earnings Per Common Share (Tables)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables" xlink:title="842007 - Disclosure - Trade Receivables and Allowance for Credit Losses (Tables)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables" xlink:title="842008 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Tables)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PrepaidExpensesTables" xlink:title="842009 - Disclosure - Prepaid Expenses (Tables)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PropertyAndEquipmentTables" xlink:title="842010 - Disclosure - Property and Equipment (Tables)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillTables" xlink:title="842011 - Disclosure - Intangible Assets and Goodwill (Tables)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpensesTables" xlink:title="842012 - Disclosure - Accrued Expenses (Tables)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayableTables" xlink:title="842013 - Disclosure - Notes Payable (Tables)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/FairValueMeasurementsTables" xlink:title="842014 - Disclosure - Fair Value Measurements (Tables)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesTables" xlink:title="842015 - Disclosure - Leases (Tables)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SegmentsTables" xlink:title="842016 - Disclosure - Segments (Tables)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesDetails" xlink:title="842017 - Disclosure - Significant Accounting Policies (Details)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesDetails1" xlink:title="842018 - Disclosure - Significant Accounting Policies (Details 1)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:title="842019 - Disclosure - Significant Accounting Policies (Details Narrative)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails" xlink:title="842020 - Disclosure - Revenue (Details)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails1" xlink:title="842021 - Disclosure - Revenue (Details 1)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails2" xlink:title="842022 - Disclosure - Revenue (Details 2)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails3" xlink:title="842023 - Disclosure - Revenue (Details 3)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails4" xlink:title="842024 - Disclosure - Revenue (Details 4)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails5" xlink:title="842025 - Disclosure - Revenue (Details 5)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetailsNarrative" xlink:title="842026 - Disclosure - Revenue (Details Narrative)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EarningsPerCommonShareDetails" xlink:title="842027 - Disclosure - Earnings Per Common Share (Details)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EarningsPerCommonShareDetails1" xlink:title="842028 - Disclosure - Earnings Per Common Share (Details 1)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails" xlink:title="842029 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails1" xlink:title="842030 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details 1)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:title="842031 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details Narrative)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails" xlink:title="842032 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1" xlink:title="842033 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 1)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2" xlink:title="842034 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 2)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3" xlink:title="842035 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 3)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4" xlink:title="842036 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 4)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:title="842037 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details Narrative)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PrepaidExpensesDetails" xlink:title="842038 - Disclosure - Prepaid Expenses (Details)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PropertyAndEquipmentDetails" xlink:title="842039 - Disclosure - Property and Equipment (Details)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PropertyAndEquipmentDetailsNarrative" xlink:title="842040 - Disclosure - Property and Equipment (Details Narrative)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails" xlink:title="842041 - Disclosure - Intangible Assets and Goodwill (Details)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1" xlink:title="842042 - Disclosure - Intangible Assets and Goodwill (Details 1)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails2" xlink:title="842043 - Disclosure - Intangible Assets and Goodwill (Details 2)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" xlink:title="842044 - Disclosure - Intangible Assets and Goodwill (Details Narrative)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpensesDetails" xlink:title="842045 - Disclosure - Accrued Expenses (Details)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpensesDetails1" xlink:title="842046 - Disclosure - Accrued Expenses (Details 1)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpensesDetailsNarrative" xlink:title="842047 - Disclosure - Accrued Expenses (Details Narrative)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayableDetails" xlink:title="842048 - Disclosure - Notes Payable (Details)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayableDetails1" xlink:title="842049 - Disclosure - Notes Payable (Details 1)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayableDetailsNarrative" xlink:title="842050 - Disclosure - Notes Payable (Details Narrative)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LineOfCreditDetailsNarrative" xlink:title="842051 - Disclosure - Line of Credit (Details Narrative)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/FairValueMeasurementsDetails" xlink:title="842052 - Disclosure - Fair Value Measurements (Details)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IncomeTaxesDetailsNarrative" xlink:title="842053 - Disclosure - Income Taxes (Details Narrative)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesDetails" xlink:title="842054 - Disclosure - Leases (Details)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesDetails1" xlink:title="842055 - Disclosure - Leases (Details 1)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesDetails2" xlink:title="842056 - Disclosure - Leases (Details 2)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesDetailsNarrative" xlink:title="842057 - Disclosure - Leases (Details Narrative)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative" xlink:title="842058 - Disclosure - Commitments and Contingencies (Details Narrative)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SegmentReportingDetails" xlink:title="842059 - Disclosure - Segment Reporting (Details)" />
  <link:calculationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SegmentReportingDetails1" xlink:title="842060 - Disclosure - Segment Reporting (Details 1)" />
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>9
<FILENAME>cxdo-20250331_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii" standalone="yes"?>
<!--XBRL Document Created with XBRLMaster-->
<!--Version: 2.3.08-->
<!--Based on XBRL 2.1-->
<!--Date of creation: 05/05/2025-->
<!--Software architectural design and coding: A'c Dharmapremananda Avt.-->
<!--Copyright (c) 2025 I-NET Business Solutions, Inc. All Rights Reserved.-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://cxdo.com/role/Cover" xlink:href="cxdo-20250331.xsd#Cover" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedBalanceSheets" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedBalanceSheets" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedStatementsOfOperationsUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited" xlink:href="cxdo-20250331.xsd#ConsolidatedStatementsOfStockholdersEquityUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPolicies" xlink:href="cxdo-20250331.xsd#SignificantAccountingPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/Revenue" xlink:href="cxdo-20250331.xsd#Revenue" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EarningsPerCommonShare" xlink:href="cxdo-20250331.xsd#EarningsPerCommonShare" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLosses" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLosses" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLosses" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLosses" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PrepaidExpenses" xlink:href="cxdo-20250331.xsd#PrepaidExpenses" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PropertyAndEquipment" xlink:href="cxdo-20250331.xsd#PropertyAndEquipment" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwill" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwill" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpenses" xlink:href="cxdo-20250331.xsd#AccruedExpenses" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayable" xlink:href="cxdo-20250331.xsd#NotesPayable" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LineOfCredit" xlink:href="cxdo-20250331.xsd#LineOfCredit" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/FairValueMeasurements" xlink:href="cxdo-20250331.xsd#FairValueMeasurements" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IncomeTaxes" xlink:href="cxdo-20250331.xsd#IncomeTaxes" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/Leases" xlink:href="cxdo-20250331.xsd#Leases" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CommitmentsAndContingencies" xlink:href="cxdo-20250331.xsd#CommitmentsAndContingencies" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SegmentReporting" xlink:href="cxdo-20250331.xsd#SegmentReporting" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesPolicies" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesTables" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueTables" xlink:href="cxdo-20250331.xsd#RevenueTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EarningsPerCommonShareTables" xlink:href="cxdo-20250331.xsd#EarningsPerCommonShareTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLossesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PrepaidExpensesTables" xlink:href="cxdo-20250331.xsd#PrepaidExpensesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PropertyAndEquipmentTables" xlink:href="cxdo-20250331.xsd#PropertyAndEquipmentTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillTables" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpensesTables" xlink:href="cxdo-20250331.xsd#AccruedExpensesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayableTables" xlink:href="cxdo-20250331.xsd#NotesPayableTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/FairValueMeasurementsTables" xlink:href="cxdo-20250331.xsd#FairValueMeasurementsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesTables" xlink:href="cxdo-20250331.xsd#LeasesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SegmentsTables" xlink:href="cxdo-20250331.xsd#SegmentsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesDetails" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesDetails1" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails" xlink:href="cxdo-20250331.xsd#RevenueDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails1" xlink:href="cxdo-20250331.xsd#RevenueDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails2" xlink:href="cxdo-20250331.xsd#RevenueDetails2" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails3" xlink:href="cxdo-20250331.xsd#RevenueDetails3" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails4" xlink:href="cxdo-20250331.xsd#RevenueDetails4" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails5" xlink:href="cxdo-20250331.xsd#RevenueDetails5" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetailsNarrative" xlink:href="cxdo-20250331.xsd#RevenueDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EarningsPerCommonShareDetails" xlink:href="cxdo-20250331.xsd#EarningsPerCommonShareDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EarningsPerCommonShareDetails1" xlink:href="cxdo-20250331.xsd#EarningsPerCommonShareDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLossesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails1" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLossesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PrepaidExpensesDetails" xlink:href="cxdo-20250331.xsd#PrepaidExpensesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PropertyAndEquipmentDetails" xlink:href="cxdo-20250331.xsd#PropertyAndEquipmentDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PropertyAndEquipmentDetailsNarrative" xlink:href="cxdo-20250331.xsd#PropertyAndEquipmentDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails2" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillDetails2" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpensesDetails" xlink:href="cxdo-20250331.xsd#AccruedExpensesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpensesDetails1" xlink:href="cxdo-20250331.xsd#AccruedExpensesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpensesDetailsNarrative" xlink:href="cxdo-20250331.xsd#AccruedExpensesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayableDetails" xlink:href="cxdo-20250331.xsd#NotesPayableDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayableDetails1" xlink:href="cxdo-20250331.xsd#NotesPayableDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayableDetailsNarrative" xlink:href="cxdo-20250331.xsd#NotesPayableDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LineOfCreditDetailsNarrative" xlink:href="cxdo-20250331.xsd#LineOfCreditDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/FairValueMeasurementsDetails" xlink:href="cxdo-20250331.xsd#FairValueMeasurementsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IncomeTaxesDetailsNarrative" xlink:href="cxdo-20250331.xsd#IncomeTaxesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesDetails" xlink:href="cxdo-20250331.xsd#LeasesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesDetails1" xlink:href="cxdo-20250331.xsd#LeasesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesDetails2" xlink:href="cxdo-20250331.xsd#LeasesDetails2" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesDetailsNarrative" xlink:href="cxdo-20250331.xsd#LeasesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative" xlink:href="cxdo-20250331.xsd#CommitmentsAndContingenciesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SegmentReportingDetails" xlink:href="cxdo-20250331.xsd#SegmentReportingDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SegmentReportingDetails1" xlink:href="cxdo-20250331.xsd#SegmentReportingDetails1" xlink:type="simple" />
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/Cover" xlink:title="00000001 - Document - Cover Page Information">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="loc_deiCoverAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="loc_deiEntityRegistrantName" />
    <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityRegistrantName" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="loc_deiEntityCentralIndexKey" />
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCentralIndexKey" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="loc_deiDocumentType" />
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentType" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="loc_deiAmendmentFlag" />
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAmendmentFlag" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_deiCurrentFiscalYearEndDate" />
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCurrentFiscalYearEndDate" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntitySmallBusiness" xlink:label="loc_deiEntitySmallBusiness" />
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntitySmallBusiness" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityShellCompany" xlink:label="loc_deiEntityShellCompany" />
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityShellCompany" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_deiEntityEmergingGrowthCompany" />
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityEmergingGrowthCompany" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_deiEntityCurrentReportingStatus" />
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCurrentReportingStatus" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_deiDocumentPeriodEndDate" />
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentPeriodEndDate" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFilerCategory" xlink:label="loc_deiEntityFilerCategory" />
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFilerCategory" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_deiDocumentFiscalPeriodFocus" />
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalPeriodFocus" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_deiDocumentFiscalYearFocus" />
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalYearFocus" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_deiEntityCommonStockSharesOutstanding" />
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCommonStockSharesOutstanding" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentQuarterlyReport" xlink:label="loc_deiDocumentQuarterlyReport" />
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentQuarterlyReport" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentTransitionReport" xlink:label="loc_deiDocumentTransitionReport" />
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentTransitionReport" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="loc_deiEntityFileNumber" />
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFileNumber" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_deiEntityIncorporationStateCountryCode" />
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityIncorporationStateCountryCode" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_deiEntityTaxIdentificationNumber" />
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityTaxIdentificationNumber" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_deiEntityAddressAddressLine1" />
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine1" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine2" xlink:label="loc_deiEntityAddressAddressLine2" />
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine2" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_deiEntityAddressCityOrTown" />
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressCityOrTown" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_deiEntityAddressStateOrProvince" />
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressStateOrProvince" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_deiEntityAddressPostalZipCode" />
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressPostalZipCode" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="loc_deiCityAreaCode" />
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCityAreaCode" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="loc_deiLocalPhoneNumber" />
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiLocalPhoneNumber" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="loc_deiSecurity12bTitle" />
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurity12bTitle" xlink:type="arc" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_deiEntityInteractiveDataCurrent" />
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityInteractiveDataCurrent" xlink:type="arc" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedBalanceSheets" xlink:title="110200 - Statement - Condensed Consolidated Balance Sheets">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaapStatementOfFinancialPositionAbstract_701683" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAbstract" xlink:label="loc_us-gaapAssetsAbstract_c3ef5f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapAssetsAbstract_c3ef5f" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="loc_us-gaapAssetsCurrentAbstract_49fe35" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapAssetsCurrentAbstract_49fe35" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_3adbdd" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_3adbdd" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="loc_us-gaapAccountsReceivableNetCurrent_fef5db" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapAccountsReceivableNetCurrent_fef5db" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="loc_us-gaapInventoryNet_bddd6b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapInventoryNet_bddd6b" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivables" xlink:label="loc_cxdoEquipmentFinancingReceivables_979d5b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_cxdoEquipmentFinancingReceivables_979d5b" order="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalizedContractCostNet" xlink:label="loc_us-gaapCapitalizedContractCostNet_185a4e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapCapitalizedContractCostNet_185a4e" order="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="loc_us-gaapPrepaidExpenseCurrent_ededa4" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapPrepaidExpenseCurrent_ededa4" order="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReceivable" xlink:label="loc_us-gaapIncomeTaxReceivable_c17140" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapIncomeTaxReceivable_c17140" order="9" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsCurrent" xlink:label="loc_us-gaapOtherAssetsCurrent_4c921a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapOtherAssetsCurrent_4c921a" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="loc_us-gaapAssetsCurrent_858574" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapAssetsCurrent_858574" order="11" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetNetNoncurrent" xlink:label="loc_us-gaapContractWithCustomerAssetNetNoncurrent_f52af8" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapContractWithCustomerAssetNetNoncurrent_f52af8" order="12" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_LongTermEquipmentFinancingReceivables" xlink:label="loc_cxdoLongTermEquipmentFinancingReceivables_3fced4" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_cxdoLongTermEquipmentFinancingReceivables_3fced4" order="13" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet_b3128b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet_b3128b" order="14" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="loc_us-gaapOperatingLeaseRightOfUseAsset_9b612c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapOperatingLeaseRightOfUseAsset_9b612c" order="15" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="loc_us-gaapIntangibleAssetsNetExcludingGoodwill_2e508d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapIntangibleAssetsNetExcludingGoodwill_2e508d" order="16" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Goodwill" xlink:label="loc_us-gaapGoodwill_755fe3" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapGoodwill_755fe3" order="17" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CapitalizedContractCostNetNoncurrent" xlink:label="loc_us-gaapCapitalizedContractCostNetNoncurrent_79ac10" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapCapitalizedContractCostNetNoncurrent_79ac10" order="18" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="loc_us-gaapOtherAssetsNoncurrent_30b320" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapOtherAssetsNoncurrent_30b320" order="19" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="loc_us-gaapAssets_eba95e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapAssets_eba95e" order="20" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract_76a382" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapLiabilitiesAndStockholdersEquityAbstract_76a382" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="loc_us-gaapLiabilitiesCurrentAbstract_ff8d6d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapLiabilitiesCurrentAbstract_ff8d6d" order="22" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrent" xlink:label="loc_us-gaapAccountsPayableCurrent_40d659" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract_ff8d6d" xlink:to="loc_us-gaapAccountsPayableCurrent_40d659" order="23" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesCurrent" xlink:label="loc_us-gaapAccruedLiabilitiesCurrent_6714b5" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract_ff8d6d" xlink:to="loc_us-gaapAccruedLiabilitiesCurrent_6714b5" order="24" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="loc_us-gaapFinanceLeaseLiabilityCurrent_a21f8f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract_ff8d6d" xlink:to="loc_us-gaapFinanceLeaseLiabilityCurrent_a21f8f" order="25" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NotesPayableCurrent" xlink:label="loc_us-gaapNotesPayableCurrent_43efd1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLiabilitiesCurrentAbstract_ff8d6d" xlink:to="loc_us-gaapNotesPayableCurrent_43efd1" order="26" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityCurrent_8bc2c0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapOperatingLeaseLiabilityCurrent_8bc2c0" order="27" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxesPayableCurrent" xlink:label="loc_us-gaapTaxesPayableCurrent_220138" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapTaxesPayableCurrent_220138" order="28" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityCurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityCurrent_b09e97" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapContractWithCustomerLiabilityCurrent_b09e97" order="29" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="loc_us-gaapLiabilitiesCurrent_3aa44b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapLiabilitiesCurrent_3aa44b" order="30" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityNoncurrent" xlink:label="loc_us-gaapContractWithCustomerLiabilityNoncurrent_0c0850" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapContractWithCustomerLiabilityNoncurrent_0c0850" order="31" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:label="loc_us-gaapFinanceLeaseLiabilityNoncurrent_88127c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapFinanceLeaseLiabilityNoncurrent_88127c" order="32" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermNotesPayable" xlink:label="loc_us-gaapLongTermNotesPayable_e1d2a5" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapLongTermNotesPayable_e1d2a5" order="33" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="loc_us-gaapOperatingLeaseLiabilityNoncurrent_22aba7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapOperatingLeaseLiabilityNoncurrent_22aba7" order="34" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="loc_us-gaapLiabilities_62cdf6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapLiabilities_62cdf6" order="35" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="loc_us-gaapStockholdersEquityAbstract_830dbf" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapStockholdersEquityAbstract_830dbf" order="36" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockValue" xlink:label="loc_us-gaapPreferredStockValue_816de4" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract_830dbf" xlink:to="loc_us-gaapPreferredStockValue_816de4" order="37" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="loc_us-gaapCommonStockValue_1dcff1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract_830dbf" xlink:to="loc_us-gaapCommonStockValue_1dcff1" order="38" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="loc_us-gaapAdditionalPaidInCapital_1aea4a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract_830dbf" xlink:to="loc_us-gaapAdditionalPaidInCapital_1aea4a" order="39" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="loc_us-gaapRetainedEarningsAccumulatedDeficit_9409ad" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract_830dbf" xlink:to="loc_us-gaapRetainedEarningsAccumulatedDeficit_9409ad" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax_270f61" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract_830dbf" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeLossNetOfTax_270f61" order="41" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity_92ab15" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStockholdersEquityAbstract_830dbf" xlink:to="loc_us-gaapStockholdersEquity_92ab15" order="42" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="loc_us-gaapLiabilitiesAndStockholdersEquity_ddfde3" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_701683" xlink:to="loc_us-gaapLiabilitiesAndStockholdersEquity_ddfde3" order="43" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:title="110201 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="loc_us-gaapStatementOfFinancialPositionAbstract_25b4c0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent_bd7a9d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_25b4c0" xlink:to="loc_us-gaapAllowanceForDoubtfulAccountsReceivableCurrent_bd7a9d" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForEquipmentFinancingReceivable" xlink:label="loc_cxdoAllowanceForEquipmentFinancingReceivable_9e4c76" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_25b4c0" xlink:to="loc_cxdoAllowanceForEquipmentFinancingReceivable_9e4c76" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForContractAssets" xlink:label="loc_cxdoAllowanceForContractAssets_1990c2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_25b4c0" xlink:to="loc_cxdoAllowanceForContractAssets_1990c2" order="3" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForLongTermEquipmentFinancingReceivable" xlink:label="loc_cxdoAllowanceForLongTermEquipmentFinancingReceivable_ddc0fc" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_25b4c0" xlink:to="loc_cxdoAllowanceForLongTermEquipmentFinancingReceivable_ddc0fc" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="loc_us-gaapPreferredStockParOrStatedValuePerShare_30446a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_25b4c0" xlink:to="loc_us-gaapPreferredStockParOrStatedValuePerShare_30446a" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="loc_us-gaapPreferredStockSharesAuthorized_280ff7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_25b4c0" xlink:to="loc_us-gaapPreferredStockSharesAuthorized_280ff7" order="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="loc_us-gaapPreferredStockSharesIssued_3a9e1c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_25b4c0" xlink:to="loc_us-gaapPreferredStockSharesIssued_3a9e1c" order="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="loc_us-gaapCommonStockParOrStatedValuePerShare_bda14e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_25b4c0" xlink:to="loc_us-gaapCommonStockParOrStatedValuePerShare_bda14e" order="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="loc_us-gaapCommonStockSharesAuthorized_b2421a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_25b4c0" xlink:to="loc_us-gaapCommonStockSharesAuthorized_b2421a" order="9" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesIssued" xlink:label="loc_us-gaapCommonStockSharesIssued_29ad9f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_25b4c0" xlink:to="loc_us-gaapCommonStockSharesIssued_29ad9f" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="loc_us-gaapCommonStockSharesOutstanding_f05be2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfFinancialPositionAbstract_25b4c0" xlink:to="loc_us-gaapCommonStockSharesOutstanding_f05be2" order="11" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" xlink:title="124100 - Statement - Condensed Consolidated Statements of Operations (Unaudited)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementAbstract" xlink:label="loc_us-gaapIncomeStatementAbstract_02d333" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ServiceRevenue" xlink:label="loc_cxdoServiceRevenue_dbba8b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_cxdoServiceRevenue_dbba8b" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionsRevenue" xlink:label="loc_cxdoSoftwareSolutionsRevenue_aa6a6f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_cxdoSoftwareSolutionsRevenue_aa6a6f" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ProductRevenue" xlink:label="loc_cxdoProductRevenue_764aa2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_cxdoProductRevenue_764aa2" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Revenues" xlink:label="loc_us-gaapRevenues_21f13e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_us-gaapRevenues_21f13e" order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="loc_us-gaapOperatingExpensesAbstract_a2419a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_us-gaapOperatingExpensesAbstract_a2419a" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfServiceRevenue" xlink:label="loc_cxdoCostOfServiceRevenue_294f3b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract_a2419a" xlink:to="loc_cxdoCostOfServiceRevenue_294f3b" order="6" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfSoftwareSolutionsRevenue" xlink:label="loc_cxdoCostOfSoftwareSolutionsRevenue_968a12" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract_a2419a" xlink:to="loc_cxdoCostOfSoftwareSolutionsRevenue_968a12" order="7" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfProductRevenue" xlink:label="loc_cxdoCostOfProductRevenue_5f6b60" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract_a2419a" xlink:to="loc_cxdoCostOfProductRevenue_5f6b60" order="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingAndMarketingExpense" xlink:label="loc_us-gaapSellingAndMarketingExpense_1c06f8" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract_a2419a" xlink:to="loc_us-gaapSellingAndMarketingExpense_1c06f8" order="9" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeneralAndAdministrativeExpense" xlink:label="loc_us-gaapGeneralAndAdministrativeExpense_6922c2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract_a2419a" xlink:to="loc_us-gaapGeneralAndAdministrativeExpense_6922c2" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpense" xlink:label="loc_us-gaapResearchAndDevelopmentExpense_77b688" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract_a2419a" xlink:to="loc_us-gaapResearchAndDevelopmentExpense_77b688" order="11" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaapOperatingExpenses_b87a48" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract_a2419a" xlink:to="loc_us-gaapOperatingExpenses_b87a48" order="12" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaapOperatingIncomeLoss_8cc3ed" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract_a2419a" xlink:to="loc_us-gaapOperatingIncomeLoss_8cc3ed" order="13" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpenseAbstract" xlink:label="loc_us-gaapNonoperatingIncomeExpenseAbstract_b9c343" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapOperatingExpensesAbstract_a2419a" xlink:to="loc_us-gaapNonoperatingIncomeExpenseAbstract_b9c343" order="14" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeOther" xlink:label="loc_us-gaapInterestIncomeOther_cab9fc" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_us-gaapInterestIncomeOther_cab9fc" order="15" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestExpenseOther" xlink:label="loc_us-gaapInterestExpenseOther_b9846c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_us-gaapInterestExpenseOther_b9846c" order="16" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="loc_us-gaapOtherNonoperatingIncomeExpense_9c4e85" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_us-gaapOtherNonoperatingIncomeExpense_9c4e85" order="17" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="loc_us-gaapNonoperatingIncomeExpense_c23029" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_us-gaapNonoperatingIncomeExpense_c23029" order="18" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_613907" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_613907" order="19" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit_487a6b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit_487a6b" order="20" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss_387188" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_us-gaapNetIncomeLoss_387188" order="21" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract_b7aa67" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_us-gaapEarningsPerShareAbstract_b7aa67" order="22" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaapEarningsPerShareBasic_f6c100" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract_b7aa67" xlink:to="loc_us-gaapEarningsPerShareBasic_f6c100" order="23" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaapEarningsPerShareDiluted_85603f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract_b7aa67" xlink:to="loc_us-gaapEarningsPerShareDiluted_85603f" order="24" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="loc_us-gaapWeightedAverageNumberOfSharesOutstandingAbstract_316801" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_us-gaapWeightedAverageNumberOfSharesOutstandingAbstract_316801" order="25" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic_d9bbc0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic_d9bbc0" order="26" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding_178e4b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementAbstract_02d333" xlink:to="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding_178e4b" order="27" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" xlink:title="148400 - Statement - Condensed Consolidated Statements of Comprehensive Income(Loss) (Unaudited)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:label="loc_us-gaapStatementOfIncomeAndComprehensiveIncomeAbstract_01040b" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss_022085" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfIncomeAndComprehensiveIncomeAbstract_01040b" xlink:to="loc_us-gaapNetIncomeLoss_022085" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract_b8b4a7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfIncomeAndComprehensiveIncomeAbstract_01040b" xlink:to="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract_b8b4a7" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_39192a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapComprehensiveIncomeNetOfTaxAbstract_b8b4a7" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_39192a" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossNetOfTax_41962a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfIncomeAndComprehensiveIncomeAbstract_01040b" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossNetOfTax_41962a" order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="loc_us-gaapComprehensiveIncomeNetOfTax_54fa90" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfIncomeAndComprehensiveIncomeAbstract_01040b" xlink:to="loc_us-gaapComprehensiveIncomeNetOfTax_54fa90" order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited" xlink:title="148600 - Statement - Consolidated Statements of Stockholders' Equity (Unaudited)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="loc_us-gaapStatementOfStockholdersEquityAbstract_7016f9" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_14b143" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfStockholdersEquityAbstract_7016f9" xlink:to="loc_us-gaapStatementTable_14b143" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_4e0ae0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_14b143" xlink:to="loc_us-gaapStatementLineItems_4e0ae0" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis_9665d2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_14b143" xlink:to="loc_us-gaapStatementEquityComponentsAxis_9665d2" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain_53b963" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementEquityComponentsAxis_9665d2" xlink:to="loc_us-gaapEquityComponentDomain_53b963" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaapCommonStockMember_fbd446" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityComponentDomain_53b963" xlink:to="loc_us-gaapCommonStockMember_fbd446" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaapAdditionalPaidInCapitalMember_ca72b6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityComponentDomain_53b963" xlink:to="loc_us-gaapAdditionalPaidInCapitalMember_ca72b6" order="22" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember_dceb93" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityComponentDomain_53b963" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember_dceb93" order="23" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaapRetainedEarningsMember_6d4ce3" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEquityComponentDomain_53b963" xlink:to="loc_us-gaapRetainedEarningsMember_6d4ce3" order="24" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesIssued" xlink:label="loc_us-gaapSharesIssued_4ec795" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4e0ae0" xlink:to="loc_us-gaapSharesIssued_4ec795" order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity_b1f90c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4e0ae0" xlink:to="loc_us-gaapStockholdersEquity_b1f90c" order="2" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaapAdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_b946b2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4e0ae0" xlink:to="loc_us-gaapAdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_b946b2" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_7464af" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4e0ae0" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_7464af" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised_4c17bc" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4e0ae0" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised_4c17bc" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueStockOptionsExercised_615c34" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4e0ae0" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueStockOptionsExercised_615c34" order="6" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" xlink:label="loc_cxdoTaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits_f81769" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4e0ae0" xlink:to="loc_cxdoTaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits_f81769" order="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss_9559d9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4e0ae0" xlink:to="loc_us-gaapNetIncomeLoss_9559d9" order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_VestingOfRestrictedStockUnitsShares" xlink:label="loc_cxdoVestingOfRestrictedStockUnitsShares_261331" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4e0ae0" xlink:to="loc_cxdoVestingOfRestrictedStockUnitsShares_261331" order="9" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_VestingOfRestrictedStockUnitsAmount" xlink:label="loc_cxdoVestingOfRestrictedStockUnitsAmount_990b3c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4e0ae0" xlink:to="loc_cxdoVestingOfRestrictedStockUnitsAmount_990b3c" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesIssued" xlink:label="loc_us-gaapSharesIssued_3c0842" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4e0ae0" xlink:to="loc_us-gaapSharesIssued_3c0842" order="11" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity_c831b3" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4e0ae0" xlink:to="loc_us-gaapStockholdersEquity_c831b3" order="12" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:title="170000 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="loc_us-gaapStatementOfCashFlowsAbstract_079bfa" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract_9c2e52" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract_079bfa" xlink:to="loc_us-gaapNetCashProvidedByUsedInOperatingActivitiesAbstract_9c2e52" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss_1a6f0a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract_079bfa" xlink:to="loc_us-gaapNetIncomeLoss_1a6f0a" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_eb59b8" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract_079bfa" xlink:to="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_eb59b8" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationAndAmortization" xlink:label="loc_us-gaapDepreciationAndAmortization_e71e2c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_eb59b8" xlink:to="loc_us-gaapDepreciationAndAmortization_e71e2c" order="4" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLosses" xlink:label="loc_cxdoAllowanceForCreditLosses_242ad1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_eb59b8" xlink:to="loc_cxdoAllowanceForCreditLosses_242ad1" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="loc_us-gaapShareBasedCompensation_d3d015" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_eb59b8" xlink:to="loc_us-gaapShareBasedCompensation_d3d015" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="loc_us-gaapOtherNoncashIncomeExpense_488f51" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_eb59b8" xlink:to="loc_us-gaapOtherNoncashIncomeExpense_488f51" order="7" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_eb59b8" xlink:to="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" order="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="loc_us-gaapIncreaseDecreaseInAccountsReceivable_79c40c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" xlink:to="loc_us-gaapIncreaseDecreaseInAccountsReceivable_79c40c" order="9" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerAsset" xlink:label="loc_us-gaapIncreaseDecreaseInContractWithCustomerAsset_130f8b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" xlink:to="loc_us-gaapIncreaseDecreaseInContractWithCustomerAsset_130f8b" order="10" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncreaseDecreaseInEquipmentFinancingReceivables" xlink:label="loc_cxdoIncreaseDecreaseInEquipmentFinancingReceivables_2b69a5" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" xlink:to="loc_cxdoIncreaseDecreaseInEquipmentFinancingReceivables_2b69a5" order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="loc_us-gaapIncreaseDecreaseInInventories_57bdda" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" xlink:to="loc_us-gaapIncreaseDecreaseInInventories_57bdda" order="12" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncreaseDecreaseInContractCosts" xlink:label="loc_cxdoIncreaseDecreaseInContractCosts_9956fd" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" xlink:to="loc_cxdoIncreaseDecreaseInContractCosts_9956fd" order="13" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="loc_us-gaapIncreaseDecreaseInPrepaidExpense_b45cfe" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" xlink:to="loc_us-gaapIncreaseDecreaseInPrepaidExpense_b45cfe" order="14" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesReceivable" xlink:label="loc_us-gaapIncreaseDecreaseInIncomeTaxesReceivable_5fc817" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" xlink:to="loc_us-gaapIncreaseDecreaseInIncomeTaxesReceivable_5fc817" order="15" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="loc_us-gaapIncreaseDecreaseInOtherOperatingAssets_35787c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" xlink:to="loc_us-gaapIncreaseDecreaseInOtherOperatingAssets_35787c" order="16" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities" xlink:label="loc_us-gaapIncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities_8220cb" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" xlink:to="loc_us-gaapIncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities_8220cb" order="17" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable_a2eda6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" xlink:to="loc_us-gaapIncreaseDecreaseInAccruedIncomeTaxesPayable_a2eda6" order="18" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:label="loc_us-gaapIncreaseDecreaseInContractWithCustomerLiability_46d40c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" xlink:to="loc_us-gaapIncreaseDecreaseInContractWithCustomerLiability_46d40c" order="19" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInOperatingActivities_fb6fae" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncreaseDecreaseInOperatingCapitalAbstract_b3963f" xlink:to="loc_us-gaapNetCashProvidedByUsedInOperatingActivities_fb6fae" order="20" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract_2857a0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract_079bfa" xlink:to="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract_2857a0" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment_08a3cb" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract_2857a0" xlink:to="loc_us-gaapPaymentsToAcquirePropertyPlantAndEquipment_08a3cb" order="22" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInInvestingActivities_705934" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInInvestingActivitiesAbstract_2857a0" xlink:to="loc_us-gaapNetCashProvidedByUsedInInvestingActivities_705934" order="23" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract_b66eaf" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract_079bfa" xlink:to="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract_b66eaf" order="24" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="loc_us-gaapFinanceLeasePrincipalPayments_4067ec" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract_b66eaf" xlink:to="loc_us-gaapFinanceLeasePrincipalPayments_4067ec" order="25" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfNotesPayable" xlink:label="loc_us-gaapRepaymentsOfNotesPayable_cd822a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract_b66eaf" xlink:to="loc_us-gaapRepaymentsOfNotesPayable_cd822a" order="26" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromStockOptionsExercised" xlink:label="loc_us-gaapProceedsFromStockOptionsExercised_0fd701" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract_b66eaf" xlink:to="loc_us-gaapProceedsFromStockOptionsExercised_0fd701" order="27" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus" xlink:label="loc_cxdoTaxesPaidOnTheNetSettlementOfStockOptionAndRsus_0e6065" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract_b66eaf" xlink:to="loc_cxdoTaxesPaidOnTheNetSettlementOfStockOptionAndRsus_0e6065" order="28" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="loc_us-gaapNetCashProvidedByUsedInFinancingActivities_33cd8c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapNetCashProvidedByUsedInFinancingActivitiesAbstract_b66eaf" xlink:to="loc_us-gaapNetCashProvidedByUsedInFinancingActivities_33cd8c" order="29" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaapEffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_10eb47" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract_079bfa" xlink:to="loc_us-gaapEffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_10eb47" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_f5097e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract_079bfa" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_f5097e" order="31" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_29c7f0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract_079bfa" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_29c7f0" order="32" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_83f1aa" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract_079bfa" xlink:to="loc_us-gaapCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_83f1aa" order="33" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="loc_us-gaapSupplementalCashFlowInformationAbstract_0b611d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract_079bfa" xlink:to="loc_us-gaapSupplementalCashFlowInformationAbstract_0b611d" order="34" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CashUsedDuringTheYearAbstract" xlink:label="loc_cxdoCashUsedDuringTheYearAbstract_a6db6b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSupplementalCashFlowInformationAbstract_0b611d" xlink:to="loc_cxdoCashUsedDuringTheYearAbstract_a6db6b" order="35" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="loc_us-gaapIncomeTaxesPaidNet_2cdbd4" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract_079bfa" xlink:to="loc_us-gaapIncomeTaxesPaidNet_2cdbd4" order="36" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPaidNet" xlink:label="loc_us-gaapInterestPaidNet_c3260f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementOfCashFlowsAbstract_079bfa" xlink:to="loc_us-gaapInterestPaidNet_c3260f" order="37" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPolicies" xlink:title="290000 - Disclosure - Significant Accounting Policies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract_774909" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SignificantAccountingPoliciesTextBlock" xlink:label="loc_us-gaapSignificantAccountingPoliciesTextBlock_7d5483" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_774909" xlink:to="loc_us-gaapSignificantAccountingPoliciesTextBlock_7d5483" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/Revenue" xlink:title="290001 - Disclosure - Revenue">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaapRevenuesAbstract_67c6d6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="loc_us-gaapRevenueFromContractWithCustomerTextBlock_22c3b6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_67c6d6" xlink:to="loc_us-gaapRevenueFromContractWithCustomerTextBlock_22c3b6" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EarningsPerCommonShare" xlink:title="290002 - Disclosure - Earnings Per Common Share">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract_a93ceb" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="loc_us-gaapEarningsPerShareTextBlock_d2adfa" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract_a93ceb" xlink:to="loc_us-gaapEarningsPerShareTextBlock_d2adfa" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLosses" xlink:title="290003 - Disclosure - Trade Receivables and Allowance for Credit Losses">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsAndNotesReceivableNetAbstract" xlink:label="loc_us-gaapAccountsAndNotesReceivableNetAbstract_bf0ab6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForCreditLossesTextBlock" xlink:label="loc_us-gaapAllowanceForCreditLossesTextBlock_07ecc7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_bf0ab6" xlink:to="loc_us-gaapAllowanceForCreditLossesTextBlock_07ecc7" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLosses" xlink:title="290004 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract" xlink:label="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_a63878" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock" xlink:label="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock_8d9d98" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_a63878" xlink:to="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock_8d9d98" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PrepaidExpenses" xlink:title="290005 - Disclosure - Prepaid Expenses">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsAbstract" xlink:label="loc_us-gaapPrepaidExpenseAndOtherAssetsAbstract_7ce465" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PrepaidExpensesDisclosureTextBlock" xlink:label="loc_cxdoPrepaidExpensesDisclosureTextBlock_67c6f4" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPrepaidExpenseAndOtherAssetsAbstract_7ce465" xlink:to="loc_cxdoPrepaidExpensesDisclosureTextBlock_67c6f4" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PropertyAndEquipment" xlink:title="290006 - Disclosure - Property and Equipment">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PropertyAndEquipmentAbstract" xlink:label="loc_cxdoPropertyAndEquipmentAbstract_41b684" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock" xlink:label="loc_us-gaapPropertyPlantAndEquipmentDisclosureTextBlock_3d7082" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoPropertyAndEquipmentAbstract_41b684" xlink:to="loc_us-gaapPropertyPlantAndEquipmentDisclosureTextBlock_3d7082" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwill" xlink:title="370000 - Disclosure - Intangible Assets and Goodwill">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_ac5180" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureTextBlock_1a62cf" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_ac5180" xlink:to="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureTextBlock_1a62cf" order="1" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpenses" xlink:title="400000 - Disclosure - Accrued Expenses">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaapPayablesAndAccrualsAbstract_6de2e7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:label="loc_us-gaapAccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_faf34a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_6de2e7" xlink:to="loc_us-gaapAccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_faf34a" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayable" xlink:title="460000 - Disclosure - Notes Payable">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract_bd6e63" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="loc_us-gaapDebtDisclosureTextBlock_0a9fe9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_bd6e63" xlink:to="loc_us-gaapDebtDisclosureTextBlock_0a9fe9" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LineOfCredit" xlink:title="460001 - Disclosure - Line of Credit">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_LineOfCreditAbstract" xlink:label="loc_cxdoLineOfCreditAbstract_e82c5d" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_LineOfCreditTextBlock" xlink:label="loc_cxdoLineOfCreditTextBlock_60c70d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoLineOfCreditAbstract_e82c5d" xlink:to="loc_cxdoLineOfCreditTextBlock_60c70d" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/FairValueMeasurements" xlink:title="815000 - Disclosure - Fair Value Measurements">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaapFairValueDisclosuresAbstract_0fb8a6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="loc_us-gaapFairValueDisclosuresTextBlock_d802da" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueDisclosuresAbstract_0fb8a6" xlink:to="loc_us-gaapFairValueDisclosuresTextBlock_d802da" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IncomeTaxes" xlink:title="815001 - Disclosure - Income Taxes">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract_6e598d" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="loc_us-gaapIncomeTaxDisclosureTextBlock_4d178d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract_6e598d" xlink:to="loc_us-gaapIncomeTaxDisclosureTextBlock_4d178d" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/Leases" xlink:title="842000 - Disclosure - Leases">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaapLeasesAbstract_e1c8f1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="loc_us-gaapLesseeOperatingLeasesTextBlock_e1de00" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_e1c8f1" xlink:to="loc_us-gaapLesseeOperatingLeasesTextBlock_e1de00" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CommitmentsAndContingencies" xlink:title="842001 - Disclosure - Commitments and Contingencies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract_024856" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="loc_us-gaapCommitmentsAndContingenciesDisclosureTextBlock_70a4f8" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract_024856" xlink:to="loc_us-gaapCommitmentsAndContingenciesDisclosureTextBlock_70a4f8" order="1" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SegmentReporting" xlink:title="842002 - Disclosure - Segment Reporting">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract_39e75c" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="loc_us-gaapSegmentReportingDisclosureTextBlock_0cb660" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentReportingAbstract_39e75c" xlink:to="loc_us-gaapSegmentReportingDisclosureTextBlock_0cb660" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesPolicies" xlink:title="842003 - Disclosure - Significant Accounting Policies (Policies)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract_0ae034" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DescriptionOfBusinessPolicyTextBlock" xlink:label="loc_cxdoDescriptionOfBusinessPolicyTextBlock_c78e7a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_cxdoDescriptionOfBusinessPolicyTextBlock_c78e7a" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BasisOfAccountingPolicyPolicyTextBlock" xlink:label="loc_us-gaapBasisOfAccountingPolicyPolicyTextBlock_25dd0a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapBasisOfAccountingPolicyPolicyTextBlock_25dd0a" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="loc_us-gaapForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_d9f56b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_d9f56b" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="loc_us-gaapCashAndCashEquivalentsPolicyTextBlock_dccec0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapCashAndCashEquivalentsPolicyTextBlock_dccec0" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TradeAndOtherAccountsReceivablePolicy" xlink:label="loc_us-gaapTradeAndOtherAccountsReceivablePolicy_b1fd37" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapTradeAndOtherAccountsReceivablePolicy_b1fd37" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock" xlink:label="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock_5a9b3c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock_5a9b3c" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock" xlink:label="loc_cxdoContractAssetsAndAllowanceForCreditLossesPolicyTextBlock_7e5de9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_cxdoContractAssetsAndAllowanceForCreditLossesPolicyTextBlock_7e5de9" order="7" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContractCostsPolicyTextBlock" xlink:label="loc_cxdoContractCostsPolicyTextBlock_90f55b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_cxdoContractCostsPolicyTextBlock_90f55b" order="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="loc_us-gaapInventoryPolicyTextBlock_c10d60" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapInventoryPolicyTextBlock_c10d60" order="9" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="loc_us-gaapPropertyPlantAndEquipmentPolicyTextBlock_8973ba" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapPropertyPlantAndEquipmentPolicyTextBlock_8973ba" order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock" xlink:label="loc_us-gaapBusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock_800f9a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapBusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock_800f9a" order="11" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationsPolicy" xlink:label="loc_us-gaapBusinessCombinationsPolicy_e15055" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapBusinessCombinationsPolicy_e15055" order="12" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsGoodwillPolicy_727ca8" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapGoodwillAndIntangibleAssetsGoodwillPolicy_727ca8" order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsIntangibleAssetsPolicy_4c82b2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapGoodwillAndIntangibleAssetsIntangibleAssetsPolicy_4c82b2" order="14" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContractLiabilitiesPolicyTextBlock" xlink:label="loc_cxdoContractLiabilitiesPolicyTextBlock_e277d2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_cxdoContractLiabilitiesPolicyTextBlock_e277d2" order="15" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_UseOfEstimates" xlink:label="loc_us-gaapUseOfEstimates_c482bd" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapUseOfEstimates_c482bd" order="16" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesPolicyTextBlock" xlink:label="loc_us-gaapCommitmentsAndContingenciesPolicyTextBlock_627154" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapCommitmentsAndContingenciesPolicyTextBlock_627154" order="17" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RevenueRecognitionSalesOfServicesPolicyTextBlock" xlink:label="loc_cxdoRevenueRecognitionSalesOfServicesPolicyTextBlock_068e69" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_cxdoRevenueRecognitionSalesOfServicesPolicyTextBlock_068e69" order="18" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfServiceRevenuePolicyTextBlock" xlink:label="loc_cxdoCostOfServiceRevenuePolicyTextBlock_4f5bf6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_cxdoCostOfServiceRevenuePolicyTextBlock_4f5bf6" order="19" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfSoftwareSolutionsRevenuePolicyTextBlock" xlink:label="loc_cxdoCostOfSoftwareSolutionsRevenuePolicyTextBlock_0b54dc" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_cxdoCostOfSoftwareSolutionsRevenuePolicyTextBlock_0b54dc" order="20" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CostOfProductRevenuePolicyTextBlock" xlink:label="loc_cxdoCostOfProductRevenuePolicyTextBlock_7360bb" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_cxdoCostOfProductRevenuePolicyTextBlock_7360bb" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyPolicy" xlink:label="loc_us-gaapStandardProductWarrantyPolicy_779c92" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapStandardProductWarrantyPolicy_779c92" order="22" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContingentConsiderationPolicyTextBlock" xlink:label="loc_cxdoContingentConsiderationPolicyTextBlock_3eae55" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_cxdoContingentConsiderationPolicyTextBlock_3eae55" order="23" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResearchAndDevelopmentExpensePolicy" xlink:label="loc_us-gaapResearchAndDevelopmentExpensePolicy_37a3a9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapResearchAndDevelopmentExpensePolicy_37a3a9" order="24" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementPolicyPolicyTextBlock" xlink:label="loc_us-gaapFairValueMeasurementPolicyPolicyTextBlock_8625c1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapFairValueMeasurementPolicyPolicyTextBlock_8625c1" order="25" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeasesPolicyTextBlock" xlink:label="loc_us-gaapLesseeLeasesPolicyTextBlock_d9c741" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapLesseeLeasesPolicyTextBlock_d9c741" order="26" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtPolicyTextBlock" xlink:label="loc_us-gaapDebtPolicyTextBlock_66d0f7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapDebtPolicyTextBlock_66d0f7" order="27" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="loc_us-gaapIncomeTaxPolicyTextBlock_1737e1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapIncomeTaxPolicyTextBlock_1737e1" order="28" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="loc_us-gaapShareBasedCompensationOptionAndIncentivePlansPolicy_898daf" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapShareBasedCompensationOptionAndIncentivePlansPolicy_898daf" order="29" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingPolicyPolicyTextBlock" xlink:label="loc_us-gaapSegmentReportingPolicyPolicyTextBlock_bb7eb7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapSegmentReportingPolicyPolicyTextBlock_bb7eb7" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MajorCustomersPolicyPolicyTextBlock" xlink:label="loc_us-gaapMajorCustomersPolicyPolicyTextBlock_f6b673" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapMajorCustomersPolicyPolicyTextBlock_f6b673" order="31" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RecentlyAdoptedAccountingPronouncementsPolicyTextBlock" xlink:label="loc_cxdoRecentlyAdoptedAccountingPronouncementsPolicyTextBlock_140766" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_cxdoRecentlyAdoptedAccountingPronouncementsPolicyTextBlock_140766" order="32" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:label="loc_us-gaapNewAccountingPronouncementsPolicyPolicyTextBlock_9a9623" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_0ae034" xlink:to="loc_us-gaapNewAccountingPronouncementsPolicyPolicyTextBlock_9a9623" order="33" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesTables" xlink:title="842004 - Disclosure - Significant Accounting Policies (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract_49186a" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock" xlink:label="loc_cxdoScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock_930c8f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_49186a" xlink:to="loc_cxdoScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock_930c8f" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock" xlink:label="loc_cxdoScheduleOfIntangibleAssetsUsefulLifeTableTextBlock_ca8a04" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_49186a" xlink:to="loc_cxdoScheduleOfIntangibleAssetsUsefulLifeTableTextBlock_ca8a04" order="2" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueTables" xlink:title="842005 - Disclosure - Revenue (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaapRevenuesAbstract_83346e" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="loc_us-gaapDisaggregationOfRevenueTableTextBlock_32fa5c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_83346e" xlink:to="loc_us-gaapDisaggregationOfRevenueTableTextBlock_32fa5c" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="loc_us-gaapContractWithCustomerAssetAndLiabilityTableTextBlock_e0abcb" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_83346e" xlink:to="loc_us-gaapContractWithCustomerAssetAndLiabilityTableTextBlock_e0abcb" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock" xlink:label="loc_cxdoChangesInContractWithCustomerAssetAndLiabilityTableTextBlock_03f55d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_83346e" xlink:to="loc_cxdoChangesInContractWithCustomerAssetAndLiabilityTableTextBlock_03f55d" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock" xlink:label="loc_us-gaapContractWithCustomerAssetAllowanceForCreditLossTableTextBlock_e22817" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_83346e" xlink:to="loc_us-gaapContractWithCustomerAssetAllowanceForCreditLossTableTextBlock_e22817" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SecuritiesBorrowedAllowanceForCreditLossTableTextBlock" xlink:label="loc_us-gaapSecuritiesBorrowedAllowanceForCreditLossTableTextBlock_8ce608" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_83346e" xlink:to="loc_us-gaapSecuritiesBorrowedAllowanceForCreditLossTableTextBlock_8ce608" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock" xlink:label="loc_us-gaapRevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock_643561" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_83346e" xlink:to="loc_us-gaapRevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock_643561" order="6" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EarningsPerCommonShareTables" xlink:title="842006 - Disclosure - Earnings Per Common Share (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract_262e2f" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="loc_us-gaapScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_9e50eb" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract_262e2f" xlink:to="loc_us-gaapScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_9e50eb" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:label="loc_us-gaapScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_e6e451" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract_262e2f" xlink:to="loc_us-gaapScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_e6e451" order="2" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables" xlink:title="842007 - Disclosure - Trade Receivables and Allowance for Credit Losses (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsAndNotesReceivableNetAbstract" xlink:label="loc_us-gaapAccountsAndNotesReceivableNetAbstract_e6ca97" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOFtradeReceivablesTableTextBlock" xlink:label="loc_cxdoScheduleOFtradeReceivablesTableTextBlock_fa255d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_e6ca97" xlink:to="loc_cxdoScheduleOFtradeReceivablesTableTextBlock_fa255d" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock" xlink:label="loc_cxdoScheduleOfAllowanceForCreditLossestableTextBlock_ae69b7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_e6ca97" xlink:to="loc_cxdoScheduleOfAllowanceForCreditLossestableTextBlock_ae69b7" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables" xlink:title="842008 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Tables)">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract" xlink:label="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_2f025e" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock" xlink:label="loc_us-gaapScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock_95a14d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_2f025e" xlink:to="loc_us-gaapScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock_95a14d" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock" xlink:label="loc_us-gaapSalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock_5325aa" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_2f025e" xlink:to="loc_us-gaapSalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock_5325aa" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock" xlink:label="loc_us-gaapAllowanceForCreditLossesOnFinancingReceivablesTableTextBlock_fbf507" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_2f025e" xlink:to="loc_us-gaapAllowanceForCreditLossesOnFinancingReceivablesTableTextBlock_fbf507" order="3" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfAgingOfReceivablesTableTextBlock" xlink:label="loc_cxdoScheduleOfAgingOfReceivablesTableTextBlock_52e107" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_2f025e" xlink:to="loc_cxdoScheduleOfAgingOfReceivablesTableTextBlock_52e107" order="4" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock" xlink:label="loc_cxdoScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock_130ac5" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_2f025e" xlink:to="loc_cxdoScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock_130ac5" order="5" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PrepaidExpensesTables" xlink:title="842009 - Disclosure - Prepaid Expenses (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsAbstract" xlink:label="loc_us-gaapPrepaidExpenseAndOtherAssetsAbstract_94d5bb" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfPrepaidExpensesTableTextBlock" xlink:label="loc_cxdoScheduleOfPrepaidExpensesTableTextBlock_dd18c7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPrepaidExpenseAndOtherAssetsAbstract_94d5bb" xlink:to="loc_cxdoScheduleOfPrepaidExpensesTableTextBlock_dd18c7" order="1" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PropertyAndEquipmentTables" xlink:title="842010 - Disclosure - Property and Equipment (Tables)">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PropertyAndEquipmentAbstract" xlink:label="loc_cxdoPropertyAndEquipmentAbstract_0d6942" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTextBlock_5cd83b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoPropertyAndEquipmentAbstract_0d6942" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTextBlock_5cd83b" order="1" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillTables" xlink:title="842011 - Disclosure - Intangible Assets and Goodwill (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_123329" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:label="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_b98c06" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_123329" xlink:to="loc_us-gaapScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_b98c06" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_2c2bff" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_123329" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock_2c2bff" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfGoodwillCarryingAmountTableTextBlock" xlink:label="loc_cxdoScheduleOfGoodwillCarryingAmountTableTextBlock_0fd67c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_123329" xlink:to="loc_cxdoScheduleOfGoodwillCarryingAmountTableTextBlock_0fd67c" order="3" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpensesTables" xlink:title="842012 - Disclosure - Accrued Expenses (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaapPayablesAndAccrualsAbstract_455a2a" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock" xlink:label="loc_us-gaapScheduleOfAccruedLiabilitiesTableTextBlock_642659" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_455a2a" xlink:to="loc_us-gaapScheduleOfAccruedLiabilitiesTableTextBlock_642659" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="loc_us-gaapScheduleOfProductWarrantyLiabilityTableTextBlock_38ea56" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_455a2a" xlink:to="loc_us-gaapScheduleOfProductWarrantyLiabilityTableTextBlock_38ea56" order="2" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayableTables" xlink:title="842013 - Disclosure - Notes Payable (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract_a9c293" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfDebtTableTextBlock" xlink:label="loc_us-gaapScheduleOfDebtTableTextBlock_212659" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_a9c293" xlink:to="loc_us-gaapScheduleOfDebtTableTextBlock_212659" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock" xlink:label="loc_us-gaapScheduleOfMaturitiesOfLongTermDebtTableTextBlock_40f030" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_a9c293" xlink:to="loc_us-gaapScheduleOfMaturitiesOfLongTermDebtTableTextBlock_40f030" order="2" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/FairValueMeasurementsTables" xlink:title="842014 - Disclosure - Fair Value Measurements (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaapFairValueDisclosuresAbstract_b04ed3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueByBalanceSheetGroupingTextBlock" xlink:label="loc_us-gaapFairValueByBalanceSheetGroupingTextBlock_02fd75" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueDisclosuresAbstract_b04ed3" xlink:to="loc_us-gaapFairValueByBalanceSheetGroupingTextBlock_02fd75" order="1" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesTables" xlink:title="842015 - Disclosure - Leases (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaapLeasesAbstract_576a4f" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityMaturityTableTextBlock_a86a73" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_576a4f" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityMaturityTableTextBlock_a86a73" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfLeaseTermAndDiscountTableTextBlock" xlink:label="loc_cxdoScheduleOfLeaseTermAndDiscountTableTextBlock_e9dd88" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_576a4f" xlink:to="loc_cxdoScheduleOfLeaseTermAndDiscountTableTextBlock_e9dd88" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock" xlink:label="loc_cxdoScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock_01b7bd" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_576a4f" xlink:to="loc_cxdoScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock_01b7bd" order="3" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SegmentsTables" xlink:title="842016 - Disclosure - Segments (Tables)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract_424567" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock" xlink:label="loc_us-gaapReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_f042c7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentReportingAbstract_424567" xlink:to="loc_us-gaapReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock_f042c7" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:label="loc_us-gaapRevenueFromExternalCustomersByGeographicAreasTableTextBlock_a73e18" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentReportingAbstract_424567" xlink:to="loc_us-gaapRevenueFromExternalCustomersByGeographicAreasTableTextBlock_a73e18" order="2" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesDetails" xlink:title="842017 - Disclosure - Significant Accounting Policies (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract_06bca8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_017724" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_06bca8" xlink:to="loc_us-gaapStatementTable_017724" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_c13cb2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_017724" xlink:to="loc_us-gaapStatementLineItems_c13cb2" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis_9e2873" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_017724" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis_9e2873" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_aa74e7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis_9e2873" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_aa74e7" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaapFurnitureAndFixturesMember_ddc258" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_aa74e7" xlink:to="loc_us-gaapFurnitureAndFixturesMember_ddc258" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OfficeEquipmentMember" xlink:label="loc_us-gaapOfficeEquipmentMember_11e2af" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_aa74e7" xlink:to="loc_us-gaapOfficeEquipmentMember_11e2af" order="22" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ComputerSoftwareIntangibleAssetsMember" xlink:label="loc_cxdoComputerSoftwareIntangibleAssetsMember_4b426f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_aa74e7" xlink:to="loc_cxdoComputerSoftwareIntangibleAssetsMember_4b426f" order="23" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InternalUseComputerSoftwareMember" xlink:label="loc_cxdoInternalUseComputerSoftwareMember_e2c3a7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_aa74e7" xlink:to="loc_cxdoInternalUseComputerSoftwareMember_e2c3a7" order="24" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember_a4e678" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_aa74e7" xlink:to="loc_us-gaapLeaseholdImprovementsMember_a4e678" order="25" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VehiclesMember" xlink:label="loc_us-gaapVehiclesMember_9b700d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_aa74e7" xlink:to="loc_us-gaapVehiclesMember_9b700d" order="26" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives" xlink:label="loc_cxdoPropertyPlantsAndEquipmentEstimatedUsefulLives_df4bdb" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_c13cb2" xlink:to="loc_cxdoPropertyPlantsAndEquipmentEstimatedUsefulLives_df4bdb" order="1" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesDetails1" xlink:title="842018 - Disclosure - Significant Accounting Policies (Details 1)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract_99de52" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_38d804" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_99de52" xlink:to="loc_us-gaapStatementTable_38d804" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_e3527a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_38d804" xlink:to="loc_us-gaapStatementLineItems_e3527a" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis_16630f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_38d804" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis_16630f" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_b9c1f5" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis_16630f" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_b9c1f5" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaapPlanNameAxis_1437fc" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_38d804" xlink:to="loc_us-gaapPlanNameAxis_1437fc" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain_6cf064" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPlanNameAxis_1437fc" xlink:to="loc_us-gaapPlanNameDomain_6cf064" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis_ae531f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_38d804" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis_ae531f" order="50" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_7ee255" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis_ae531f" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_7ee255" order="50" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CustomerRelationshipMember" xlink:label="loc_cxdoCustomerRelationshipMember_dc4fd0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_b9c1f5" xlink:to="loc_cxdoCustomerRelationshipMember_dc4fd0" order="51" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BottomMember" xlink:label="loc_cxdoBottomMember_232dea" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPlanNameDomain_6cf064" xlink:to="loc_cxdoBottomMember_232dea" order="52" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TopMember" xlink:label="loc_cxdoTopMember_261526" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPlanNameDomain_6cf064" xlink:to="loc_cxdoTopMember_261526" order="53" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DevelopedTechnologiesMember" xlink:label="loc_cxdoDevelopedTechnologiesMember_457c14" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_7ee255" xlink:to="loc_cxdoDevelopedTechnologiesMember_457c14" order="54" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TrademarkTradeNamesMember" xlink:label="loc_cxdoTrademarkTradeNamesMember_fbca8a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_b9c1f5" xlink:to="loc_cxdoTrademarkTradeNamesMember_fbca8a" order="55" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife" xlink:label="loc_cxdoFiniteLivedIntangibleAssetEstimatedUsefulLife_1e3ce6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_e3527a" xlink:to="loc_cxdoFiniteLivedIntangibleAssetEstimatedUsefulLife_1e3ce6" order="1" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:title="842019 - Disclosure - Significant Accounting Policies (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="loc_us-gaapAccountingPoliciesAbstract_87f3b4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_43d115" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_87f3b4" xlink:to="loc_us-gaapStatementTable_43d115" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_d8a1ec" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_43d115" xlink:to="loc_us-gaapStatementLineItems_d8a1ec" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicDistributionAxis" xlink:label="loc_us-gaapGeographicDistributionAxis_d2f0fd" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_43d115" xlink:to="loc_us-gaapGeographicDistributionAxis_d2f0fd" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicDistributionDomain" xlink:label="loc_us-gaapGeographicDistributionDomain_09ffac" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGeographicDistributionAxis_d2f0fd" xlink:to="loc_us-gaapGeographicDistributionDomain_09ffac" order="20" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OtherCountriesMember" xlink:label="loc_cxdoOtherCountriesMember_a5328e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGeographicDistributionDomain_09ffac" xlink:to="loc_cxdoOtherCountriesMember_a5328e" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax_5d1a99" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_d8a1ec" xlink:to="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax_5d1a99" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherSellingAndMarketingExpense" xlink:label="loc_us-gaapOtherSellingAndMarketingExpense_d9262c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_d8a1ec" xlink:to="loc_us-gaapOtherSellingAndMarketingExpense_d9262c" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashEquivalentsAtCarryingValue" xlink:label="loc_us-gaapCashEquivalentsAtCarryingValue_4a8c5e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_87f3b4" xlink:to="loc_us-gaapCashEquivalentsAtCarryingValue_4a8c5e" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CapitalizedContractCost" xlink:label="loc_cxdoCapitalizedContractCost_a5b7e7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_87f3b4" xlink:to="loc_cxdoCapitalizedContractCost_a5b7e7" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaapIncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_7d00ce" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_87f3b4" xlink:to="loc_us-gaapIncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_7d00ce" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RevenueConcentrationRiskPercentage" xlink:label="loc_cxdoRevenueConcentrationRiskPercentage_27d7bc" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_87f3b4" xlink:to="loc_cxdoRevenueConcentrationRiskPercentage_27d7bc" order="6" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AccountsReceivableConcentrationRiskPercentage" xlink:label="loc_cxdoAccountsReceivableConcentrationRiskPercentage_7705fc" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountingPoliciesAbstract_87f3b4" xlink:to="loc_cxdoAccountsReceivableConcentrationRiskPercentage_7705fc" order="7" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails" xlink:title="842020 - Disclosure - Revenue (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaapRevenuesAbstract_b71612" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_b18aab" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_b71612" xlink:to="loc_us-gaapStatementTable_b18aab" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_09897c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_b18aab" xlink:to="loc_us-gaapStatementLineItems_09897c" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaapStatementBusinessSegmentsAxis_719c60" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_b18aab" xlink:to="loc_us-gaapStatementBusinessSegmentsAxis_719c60" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain_bef671" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis_719c60" xlink:to="loc_us-gaapSegmentDomain_bef671" order="20" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CloudTelecommunicationsSegmentMember" xlink:label="loc_cxdoCloudTelecommunicationsSegmentMember_58ca5b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentDomain_bef671" xlink:to="loc_cxdoCloudTelecommunicationsSegmentMember_58ca5b" order="21" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionsSegmentMember" xlink:label="loc_cxdoSoftwareSolutionsSegmentMember_1ba8f7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentDomain_bef671" xlink:to="loc_cxdoSoftwareSolutionsSegmentMember_1ba8f7" order="22" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ReportableSegmentMember" xlink:label="loc_cxdoReportableSegmentMember_3d0271" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentDomain_bef671" xlink:to="loc_cxdoReportableSegmentMember_3d0271" order="23" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DesktopServices" xlink:label="loc_cxdoDesktopServices_a22cb2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_09897c" xlink:to="loc_cxdoDesktopServices_a22cb2" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InterestReceivedOnEquipmentFinancing" xlink:label="loc_cxdoInterestReceivedOnEquipmentFinancing_780b02" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_09897c" xlink:to="loc_cxdoInterestReceivedOnEquipmentFinancing_780b02" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TelecommunicationsServices" xlink:label="loc_cxdoTelecommunicationsServices_39de8c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_09897c" xlink:to="loc_cxdoTelecommunicationsServices_39de8c" order="3" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FeesCommissionsAndOtherRecognizedOverTime" xlink:label="loc_cxdoFeesCommissionsAndOtherRecognizedOverTime_02605d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_09897c" xlink:to="loc_cxdoFeesCommissionsAndOtherRecognizedOverTime_02605d" order="4" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OneTimeFeesCommissionsAndOther" xlink:label="loc_cxdoOneTimeFeesCommissionsAndOther_24b44a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_09897c" xlink:to="loc_cxdoOneTimeFeesCommissionsAndOther_24b44a" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareLicenses" xlink:label="loc_cxdoSoftwareLicenses_ef79e3" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_09897c" xlink:to="loc_cxdoSoftwareLicenses_ef79e3" order="6" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SubscriptionMaintenanceAndSupport" xlink:label="loc_cxdoSubscriptionMaintenanceAndSupport_5947dc" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_09897c" xlink:to="loc_cxdoSubscriptionMaintenanceAndSupport_5947dc" order="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfessionalFees" xlink:label="loc_us-gaapProfessionalFees_d6c38f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_09897c" xlink:to="loc_us-gaapProfessionalFees_d6c38f" order="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax_16b6bb" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_09897c" xlink:to="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax_16b6bb" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime" xlink:label="loc_cxdoProductsServicesAndFeesRecognizedAtAPointInTime_20e87a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_09897c" xlink:to="loc_cxdoProductsServicesAndFeesRecognizedAtAPointInTime_20e87a" order="10" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ProductsServicesAndFeesTransferredOverTime" xlink:label="loc_cxdoProductsServicesAndFeesTransferredOverTime_d4dfc8" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_09897c" xlink:to="loc_cxdoProductsServicesAndFeesTransferredOverTime_d4dfc8" order="11" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RevenueRecognition" xlink:label="loc_cxdoRevenueRecognition_950133" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_09897c" xlink:to="loc_cxdoRevenueRecognition_950133" order="12" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails1" xlink:title="842021 - Disclosure - Revenue (Details 1)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaapRevenuesAbstract_8dda46" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherReceivables" xlink:label="loc_us-gaapOtherReceivables_27b609" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_8dda46" xlink:to="loc_us-gaapOtherReceivables_27b609" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepositContractsAssets" xlink:label="loc_us-gaapDepositContractsAssets_150725" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_8dda46" xlink:to="loc_us-gaapDepositContractsAssets_150725" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepositContractsLiabilities" xlink:label="loc_us-gaapDepositContractsLiabilities_3aec45" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_8dda46" xlink:to="loc_us-gaapDepositContractsLiabilities_3aec45" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails2" xlink:title="842022 - Disclosure - Revenue (Details 2)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaapRevenuesAbstract_1bdce0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_c326f1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_1bdce0" xlink:to="loc_us-gaapStatementTable_c326f1" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_913c3f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_c326f1" xlink:to="loc_us-gaapStatementLineItems_913c3f" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis_4ab2c9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_c326f1" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis_4ab2c9" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_a5bc2f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis_4ab2c9" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_a5bc2f" order="10" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContractAssetsMember" xlink:label="loc_cxdoContractAssetsMember_6a3770" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_a5bc2f" xlink:to="loc_cxdoContractAssetsMember_6a3770" order="11" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContractLiabilitiesMember" xlink:label="loc_cxdoContractLiabilitiesMember_6a9471" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_a5bc2f" xlink:to="loc_cxdoContractLiabilitiesMember_6a9471" order="12" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RevenueRecognizedThatWasIncludedInContractLiabilityBalance" xlink:label="loc_cxdoRevenueRecognizedThatWasIncludedInContractLiabilityBalance_d99f01" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_913c3f" xlink:to="loc_cxdoRevenueRecognizedThatWasIncludedInContractLiabilityBalance_d99f01" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue" xlink:label="loc_cxdoIncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue_57e775" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_913c3f" xlink:to="loc_cxdoIncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue_57e775" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TransferredToReceivablesFromContractAssetsRecognized" xlink:label="loc_cxdoTransferredToReceivablesFromContractAssetsRecognized_f18b9c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_913c3f" xlink:to="loc_cxdoTransferredToReceivablesFromContractAssetsRecognized_f18b9c" order="3" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncreaseDueToAdditionalUnamortizedDiscounts" xlink:label="loc_cxdoIncreaseDueToAdditionalUnamortizedDiscounts_1f74b6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_913c3f" xlink:to="loc_cxdoIncreaseDueToAdditionalUnamortizedDiscounts_1f74b6" order="4" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails3" xlink:title="842023 - Disclosure - Revenue (Details 3)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaapRevenuesAbstract_0c4fd7" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DepositContractsAssetsGross" xlink:label="loc_cxdoDepositContractsAssetsGross_17f617" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_0c4fd7" xlink:to="loc_cxdoDepositContractsAssetsGross_17f617" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceforcreditlossesofContractAssets" xlink:label="loc_cxdoAllowanceforcreditlossesofContractAssets_b7d630" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_0c4fd7" xlink:to="loc_cxdoAllowanceforcreditlossesofContractAssets_b7d630" order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepositContractsAssets" xlink:label="loc_us-gaapDepositContractsAssets_77d635" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_0c4fd7" xlink:to="loc_us-gaapDepositContractsAssets_77d635" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails4" xlink:title="842024 - Disclosure - Revenue (Details 4)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaapRevenuesAbstract_10d9b1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowancesForCreditLossesOfContractAssets" xlink:label="loc_cxdoAllowancesForCreditLossesOfContractAssets_32cb30" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_10d9b1" xlink:to="loc_cxdoAllowancesForCreditLossesOfContractAssets_32cb30" order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLossesOfContractAssetsProvision" xlink:label="loc_cxdoAllowanceForCreditLossesOfContractAssetsProvision_0bb76c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_10d9b1" xlink:to="loc_cxdoAllowanceForCreditLossesOfContractAssetsProvision_0bb76c" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs" xlink:label="loc_cxdoFinancingReceivableAllowancesForCreditLossesWriteOffs_1773fa" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_10d9b1" xlink:to="loc_cxdoFinancingReceivableAllowancesForCreditLossesWriteOffs_1773fa" order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FinancingReceivableAllowanceForCreditLossesRecoveryOthers" xlink:label="loc_cxdoFinancingReceivableAllowanceForCreditLossesRecoveryOthers_d9b246" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_10d9b1" xlink:to="loc_cxdoFinancingReceivableAllowanceForCreditLossesRecoveryOthers_d9b246" order="4" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLossesOfContractAssets" xlink:label="loc_cxdoAllowanceForCreditLossesOfContractAssets_1f8d2d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_10d9b1" xlink:to="loc_cxdoAllowanceForCreditLossesOfContractAssets_1f8d2d" order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails5" xlink:title="842025 - Disclosure - Revenue (Details 5)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaapRevenuesAbstract_bef0ef" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_e216e9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_bef0ef" xlink:to="loc_us-gaapStatementTable_e216e9" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_2ae772" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_e216e9" xlink:to="loc_us-gaapStatementLineItems_2ae772" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsegmentsAxis" xlink:label="loc_us-gaapSubsegmentsAxis_aca0f6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_e216e9" xlink:to="loc_us-gaapSubsegmentsAxis_aca0f6" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsegmentsDomain" xlink:label="loc_us-gaapSubsegmentsDomain_0726f3" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsegmentsAxis_aca0f6" xlink:to="loc_us-gaapSubsegmentsDomain_0726f3" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaapStatementBusinessSegmentsAxis_01aaf2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_e216e9" xlink:to="loc_us-gaapStatementBusinessSegmentsAxis_01aaf2" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain_b3d0ba" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis_01aaf2" xlink:to="loc_us-gaapSegmentDomain_b3d0ba" order="30" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TelecommunicationsServicesMember" xlink:label="loc_cxdoTelecommunicationsServicesMember_649106" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsegmentsDomain_0726f3" xlink:to="loc_cxdoTelecommunicationsServicesMember_649106" order="31" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DesktopDevicesMember" xlink:label="loc_cxdoDesktopDevicesMember_7652f6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSubsegmentsDomain_0726f3" xlink:to="loc_cxdoDesktopDevicesMember_7652f6" order="32" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionsMember" xlink:label="loc_cxdoSoftwareSolutionsMember_3780c9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentDomain_b3d0ba" xlink:to="loc_cxdoSoftwareSolutionsMember_3780c9" order="33" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInSecondYear" xlink:label="loc_us-gaapPurchaseObligationDueInSecondYear_25e436" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2ae772" xlink:to="loc_us-gaapPurchaseObligationDueInSecondYear_25e436" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInThirdYear" xlink:label="loc_us-gaapPurchaseObligationDueInThirdYear_7175ba" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2ae772" xlink:to="loc_us-gaapPurchaseObligationDueInThirdYear_7175ba" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInFourthYear" xlink:label="loc_us-gaapPurchaseObligationDueInFourthYear_0933e5" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2ae772" xlink:to="loc_us-gaapPurchaseObligationDueInFourthYear_0933e5" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInFifthYear" xlink:label="loc_us-gaapPurchaseObligationDueInFifthYear_395ddc" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2ae772" xlink:to="loc_us-gaapPurchaseObligationDueInFifthYear_395ddc" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueAfterFifthYear" xlink:label="loc_us-gaapPurchaseObligationDueAfterFifthYear_9770f0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2ae772" xlink:to="loc_us-gaapPurchaseObligationDueAfterFifthYear_9770f0" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligation" xlink:label="loc_us-gaapPurchaseObligation_936ef7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2ae772" xlink:to="loc_us-gaapPurchaseObligation_936ef7" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetailsNarrative" xlink:title="842026 - Disclosure - Revenue (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenuesAbstract" xlink:label="loc_us-gaapRevenuesAbstract_3b5360" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLossesAsPercentOfGrossContractAssets" xlink:label="loc_cxdoAllowanceForCreditLossesAsPercentOfGrossContractAssets_fc9727" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_3b5360" xlink:to="loc_cxdoAllowanceForCreditLossesAsPercentOfGrossContractAssets_fc9727" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLossesDescriptionOfPeriod" xlink:label="loc_cxdoAllowanceForCreditLossesDescriptionOfPeriod_b18743" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRevenuesAbstract_3b5360" xlink:to="loc_cxdoAllowanceForCreditLossesDescriptionOfPeriod_b18743" order="2" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EarningsPerCommonShareDetails" xlink:title="842027 - Disclosure - Earnings Per Common Share (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract_167f0b" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss_435047" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract_167f0b" xlink:to="loc_us-gaapNetIncomeLoss_435047" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:label="loc_us-gaapWeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_7610ea" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract_167f0b" xlink:to="loc_us-gaapWeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_7610ea" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic_82d92b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract_167f0b" xlink:to="loc_us-gaapWeightedAverageNumberOfSharesOutstandingBasic_82d92b" order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DilutiveEffectOfStockBasedAwards" xlink:label="loc_cxdoDilutiveEffectOfStockBasedAwards_146bf3" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract_167f0b" xlink:to="loc_cxdoDilutiveEffectOfStockBasedAwards_146bf3" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding_d5c8b2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract_167f0b" xlink:to="loc_us-gaapWeightedAverageNumberOfDilutedSharesOutstanding_d5c8b2" order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="loc_us-gaapEarningsPerShareBasic_38ba6a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract_167f0b" xlink:to="loc_us-gaapEarningsPerShareBasic_38ba6a" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="loc_us-gaapEarningsPerShareDiluted_ad1c5f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract_167f0b" xlink:to="loc_us-gaapEarningsPerShareDiluted_ad1c5f" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EarningsPerCommonShareDetails1" xlink:title="842028 - Disclosure - Earnings Per Common Share (Details 1)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="loc_us-gaapEarningsPerShareAbstract_c08dbb" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_9749c4" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapEarningsPerShareAbstract_c08dbb" xlink:to="loc_us-gaapStatementTable_9749c4" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_05efad" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_9749c4" xlink:to="loc_us-gaapStatementLineItems_05efad" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="loc_us-gaapFinancialInstrumentAxis_81b4dd" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_9749c4" xlink:to="loc_us-gaapFinancialInstrumentAxis_81b4dd" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_934c05" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFinancialInstrumentAxis_81b4dd" xlink:to="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_934c05" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockOptionMember" xlink:label="loc_us-gaapStockOptionMember_1db9e3" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_934c05" xlink:to="loc_us-gaapStockOptionMember_1db9e3" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_ff0618" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_05efad" xlink:to="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_ff0618" order="1" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails" xlink:title="842029 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsAndNotesReceivableNetAbstract" xlink:label="loc_us-gaapAccountsAndNotesReceivableNetAbstract_151662" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableGross" xlink:label="loc_us-gaapAccountsReceivableGross_3be77e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_151662" xlink:to="loc_us-gaapAccountsReceivableGross_3be77e" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="loc_us-gaapAllowanceForDoubtfulAccountsReceivable_5d3146" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_151662" xlink:to="loc_us-gaapAllowanceForDoubtfulAccountsReceivable_5d3146" order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNet" xlink:label="loc_us-gaapAccountsReceivableNet_63a427" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_151662" xlink:to="loc_us-gaapAccountsReceivableNet_63a427" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NontradeReceivablesCurrent" xlink:label="loc_us-gaapNontradeReceivablesCurrent_a256be" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_151662" xlink:to="loc_us-gaapNontradeReceivablesCurrent_a256be" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermInvestmentsAndReceivablesNet" xlink:label="loc_us-gaapLongTermInvestmentsAndReceivablesNet_9f432f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_151662" xlink:to="loc_us-gaapLongTermInvestmentsAndReceivablesNet_9f432f" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TradeReceivablesNet" xlink:label="loc_cxdoTradeReceivablesNet_5eeaba" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_151662" xlink:to="loc_cxdoTradeReceivablesNet_5eeaba" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails1" xlink:title="842030 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details 1)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsAndNotesReceivableNetAbstract" xlink:label="loc_us-gaapAccountsAndNotesReceivableNetAbstract_179472" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent" xlink:label="loc_us-gaapNetInvestmentInLeaseAllowanceForCreditLossCurrent_82852c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_179472" xlink:to="loc_us-gaapNetInvestmentInLeaseAllowanceForCreditLossCurrent_82852c" order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProvisionForOtherCreditLosses" xlink:label="loc_us-gaapProvisionForOtherCreditLosses_42525b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_179472" xlink:to="loc_us-gaapProvisionForOtherCreditLosses_42525b" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForLoansAndLeaseLossesWriteOffs" xlink:label="loc_cxdoAllowanceForLoansAndLeaseLossesWriteOffs_7834bd" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_179472" xlink:to="loc_cxdoAllowanceForLoansAndLeaseLossesWriteOffs_7834bd" order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReinsuranceCostsAndRecoveriesNet" xlink:label="loc_us-gaapReinsuranceCostsAndRecoveriesNet_31e1fd" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_179472" xlink:to="loc_us-gaapReinsuranceCostsAndRecoveriesNet_31e1fd" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent" xlink:label="loc_us-gaapNetInvestmentInLeaseAllowanceForCreditLossCurrent_ce0ae9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_179472" xlink:to="loc_us-gaapNetInvestmentInLeaseAllowanceForCreditLossCurrent_ce0ae9" order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:title="842031 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsAndNotesReceivableNetAbstract" xlink:label="loc_us-gaapAccountsAndNotesReceivableNetAbstract_01b473" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AccountsPercentageOfAccountsReceivable" xlink:label="loc_cxdoAccountsPercentageOfAccountsReceivable_92e655" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAccountsAndNotesReceivableNetAbstract_01b473" xlink:to="loc_cxdoAccountsPercentageOfAccountsReceivable_92e655" order="1" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails" xlink:title="842032 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details)">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract" xlink:label="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_9dda7c" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivableRevolving" xlink:label="loc_us-gaapFinancingReceivableRevolving_530562" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_9dda7c" xlink:to="loc_us-gaapFinancingReceivableRevolving_530562" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LimitedPartnersCumulativeNetIncome" xlink:label="loc_us-gaapLimitedPartnersCumulativeNetIncome_3d8baa" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_9dda7c" xlink:to="loc_us-gaapLimitedPartnersCumulativeNetIncome_3d8baa" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_LessAllowanceForCreditLosses" xlink:label="loc_cxdoLessAllowanceForCreditLosses_4e1343" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_9dda7c" xlink:to="loc_cxdoLessAllowanceForCreditLosses_4e1343" order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FinancingReceivableAllowanceForCreditLossEquipment" xlink:label="loc_cxdoFinancingReceivableAllowanceForCreditLossEquipment_21b487" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_9dda7c" xlink:to="loc_cxdoFinancingReceivableAllowanceForCreditLossEquipment_21b487" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReceivablesNetCurrent" xlink:label="loc_us-gaapReceivablesNetCurrent_331474" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_9dda7c" xlink:to="loc_us-gaapReceivablesNetCurrent_331474" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermAccountsNotesAndLoansReceivableNetNoncurrent" xlink:label="loc_us-gaapLongTermAccountsNotesAndLoansReceivableNetNoncurrent_a73be7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_9dda7c" xlink:to="loc_us-gaapLongTermAccountsNotesAndLoansReceivableNetNoncurrent_a73be7" order="6" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_LongTermInvestmentsAndReceivables" xlink:label="loc_cxdoLongTermInvestmentsAndReceivables_18a237" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_9dda7c" xlink:to="loc_cxdoLongTermInvestmentsAndReceivables_18a237" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1" xlink:title="842033 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 1)">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract" xlink:label="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_1ebe99" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GrossEquipmentFinancingReceivablesNexttwelvemonths" xlink:label="loc_cxdoGrossEquipmentFinancingReceivablesNexttwelvemonths_ea5e0d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_1ebe99" xlink:to="loc_cxdoGrossEquipmentFinancingReceivablesNexttwelvemonths_ea5e0d" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GrossEquipmentFinancingReceivablesYeartwo" xlink:label="loc_cxdoGrossEquipmentFinancingReceivablesYeartwo_0c84ee" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_1ebe99" xlink:to="loc_cxdoGrossEquipmentFinancingReceivablesYeartwo_0c84ee" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GrossEquipmentFinancingReceivablesYearthree" xlink:label="loc_cxdoGrossEquipmentFinancingReceivablesYearthree_bed169" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_1ebe99" xlink:to="loc_cxdoGrossEquipmentFinancingReceivablesYearthree_bed169" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GrossEquipmentFinancingReceivablesYearFour" xlink:label="loc_cxdoGrossEquipmentFinancingReceivablesYearFour_c40bd6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_1ebe99" xlink:to="loc_cxdoGrossEquipmentFinancingReceivablesYearFour_c40bd6" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GrossEquipmentFinancingReceivablesYearFive" xlink:label="loc_cxdoGrossEquipmentFinancingReceivablesYearFive_591dc7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_1ebe99" xlink:to="loc_cxdoGrossEquipmentFinancingReceivablesYearFive_591dc7" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GrossEquipmentFinancingReceivablesAfteryearfive" xlink:label="loc_cxdoGrossEquipmentFinancingReceivablesAfteryearfive_2bfb23" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_1ebe99" xlink:to="loc_cxdoGrossEquipmentFinancingReceivablesAfteryearfive_2bfb23" order="6" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesDue" xlink:label="loc_cxdoEquipmentFinancingReceivablesDue_cdcac8" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_1ebe99" xlink:to="loc_cxdoEquipmentFinancingReceivablesDue_cdcac8" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2" xlink:title="842034 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 2)">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract" xlink:label="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_ad6fc6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_984cc9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_ad6fc6" xlink:to="loc_us-gaapStatementTable_984cc9" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_e18e03" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_984cc9" xlink:to="loc_us-gaapStatementLineItems_e18e03" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditLossStatusAxis" xlink:label="loc_us-gaapCreditLossStatusAxis_ab88fc" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_984cc9" xlink:to="loc_us-gaapCreditLossStatusAxis_ab88fc" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditLossStatusDomain" xlink:label="loc_us-gaapCreditLossStatusDomain_007728" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCreditLossStatusAxis_ab88fc" xlink:to="loc_us-gaapCreditLossStatusDomain_007728" order="20" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLossesMember" xlink:label="loc_cxdoAllowanceForCreditLossesMember_9ce1d8" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCreditLossStatusDomain_007728" xlink:to="loc_cxdoAllowanceForCreditLossesMember_9ce1d8" order="21" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceforcreditlossesofContractAssets" xlink:label="loc_cxdoAllowanceforcreditlossesofContractAssets_988d9f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_e18e03" xlink:to="loc_cxdoAllowanceforcreditlossesofContractAssets_988d9f" order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProvisionForOtherCreditLosses" xlink:label="loc_us-gaapProvisionForOtherCreditLosses_908b5e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_e18e03" xlink:to="loc_us-gaapProvisionForOtherCreditLosses_908b5e" order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs" xlink:label="loc_us-gaapFinancingReceivableAllowanceForCreditLossesWriteOffs_ce0dc5" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_e18e03" xlink:to="loc_us-gaapFinancingReceivableAllowanceForCreditLossesWriteOffs_ce0dc5" order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery" xlink:label="loc_us-gaapFinancingReceivableAllowanceForCreditLossesRecovery_36f4b6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_e18e03" xlink:to="loc_us-gaapFinancingReceivableAllowanceForCreditLossesRecovery_36f4b6" order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceforcreditlossesofContractAssets" xlink:label="loc_cxdoAllowanceforcreditlossesofContractAssets_564fe9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_e18e03" xlink:to="loc_cxdoAllowanceforcreditlossesofContractAssets_564fe9" order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3" xlink:title="842035 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 3)">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract" xlink:label="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_0868c5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_a25db8" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_0868c5" xlink:to="loc_us-gaapStatementTable_a25db8" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_1bacc3" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_a25db8" xlink:to="loc_us-gaapStatementLineItems_1bacc3" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablesPeriodPastDueAxis" xlink:label="loc_us-gaapFinancingReceivablesPeriodPastDueAxis_813713" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_a25db8" xlink:to="loc_us-gaapFinancingReceivablesPeriodPastDueAxis_813713" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablesPeriodPastDueDomain" xlink:label="loc_us-gaapFinancingReceivablesPeriodPastDueDomain_7d110c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFinancingReceivablesPeriodPastDueAxis_813713" xlink:to="loc_us-gaapFinancingReceivablesPeriodPastDueDomain_7d110c" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivables60To89DaysPastDueMember" xlink:label="loc_us-gaapFinancingReceivables60To89DaysPastDueMember_cbb3ef" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFinancingReceivablesPeriodPastDueDomain_7d110c" xlink:to="loc_us-gaapFinancingReceivables60To89DaysPastDueMember_cbb3ef" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember" xlink:label="loc_us-gaapFinancingReceivablesEqualToGreaterThan90DaysPastDueMember_6ece04" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFinancingReceivablesPeriodPastDueDomain_7d110c" xlink:to="loc_us-gaapFinancingReceivablesEqualToGreaterThan90DaysPastDueMember_6ece04" order="22" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AgingOfReceivablesAmountDues" xlink:label="loc_cxdoAgingOfReceivablesAmountDues_17c77d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_1bacc3" xlink:to="loc_cxdoAgingOfReceivablesAmountDues_17c77d" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AgingOfReceivablesDues" xlink:label="loc_cxdoAgingOfReceivablesDues_a281a7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_1bacc3" xlink:to="loc_cxdoAgingOfReceivablesDues_a281a7" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4" xlink:title="842036 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 4)">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract" xlink:label="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_e6a80c" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_958e90" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_e6a80c" xlink:to="loc_us-gaapStatementTable_958e90" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_f2ce10" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_958e90" xlink:to="loc_us-gaapStatementLineItems_f2ce10" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis_45a006" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_958e90" xlink:to="loc_srtStatementGeographicalAxis_45a006" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain_edf041" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtStatementGeographicalAxis_45a006" xlink:to="loc_srtSegmentGeographicalDomain_edf041" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateAxis" xlink:label="loc_us-gaapAwardDateAxis_1d8502" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_958e90" xlink:to="loc_us-gaapAwardDateAxis_1d8502" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateDomain" xlink:label="loc_us-gaapAwardDateDomain_b30b36" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateAxis_1d8502" xlink:to="loc_us-gaapAwardDateDomain_b30b36" order="40" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_UnitedStateMember" xlink:label="loc_cxdoUnitedStateMember_f47962" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain_edf041" xlink:to="loc_cxdoUnitedStateMember_f47962" order="41" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyTwoMember" xlink:label="loc_cxdoTwoThousendTwentyTwoMember_426fae" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateDomain_b30b36" xlink:to="loc_cxdoTwoThousendTwentyTwoMember_426fae" order="42" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyOneMember" xlink:label="loc_cxdoTwoThousendTwentyOneMember_570956" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateDomain_b30b36" xlink:to="loc_cxdoTwoThousendTwentyOneMember_570956" order="43" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyFiveMember" xlink:label="loc_cxdoTwoThousendTwentyFiveMember_a7f2d7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateDomain_b30b36" xlink:to="loc_cxdoTwoThousendTwentyFiveMember_a7f2d7" order="44" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyFourMember" xlink:label="loc_cxdoTwoThousendTwentyFourMember_cb9b86" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateDomain_b30b36" xlink:to="loc_cxdoTwoThousendTwentyFourMember_cb9b86" order="45" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PriorMember" xlink:label="loc_cxdoPriorMember_f2dc28" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateDomain_b30b36" xlink:to="loc_cxdoPriorMember_f2dc28" order="46" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyThreeMember" xlink:label="loc_cxdoTwoThousendTwentyThreeMember_17a615" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateDomain_b30b36" xlink:to="loc_cxdoTwoThousendTwentyThreeMember_17a615" order="47" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TotalEquipmentFinancingReceivablesDue" xlink:label="loc_cxdoTotalEquipmentFinancingReceivablesDue_967e31" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_f2ce10" xlink:to="loc_cxdoTotalEquipmentFinancingReceivablesDue_967e31" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs" xlink:label="loc_cxdoTotalEquipmentFinancingReceivablesDueGrossWriteOffs_b366f5" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_f2ce10" xlink:to="loc_cxdoTotalEquipmentFinancingReceivablesDueGrossWriteOffs_b366f5" order="2" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:title="842037 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract" xlink:label="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_976cca" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_FinancingReceivableAllowanceForCreditLossToNonaccrualPercent" xlink:label="loc_srtFinancingReceivableAllowanceForCreditLossToNonaccrualPercent_336d4b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoEquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract_976cca" xlink:to="loc_srtFinancingReceivableAllowanceForCreditLossToNonaccrualPercent_336d4b" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PrepaidExpensesDetails" xlink:title="842038 - Disclosure - Prepaid Expenses (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsAbstract" xlink:label="loc_us-gaapPrepaidExpenseAndOtherAssetsAbstract_a819f1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidInsurance" xlink:label="loc_us-gaapPrepaidInsurance_d9046f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPrepaidExpenseAndOtherAssetsAbstract_a819f1" xlink:to="loc_us-gaapPrepaidInsurance_d9046f" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PrepaidSoftwareServices" xlink:label="loc_cxdoPrepaidSoftwareServices_0275ae" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPrepaidExpenseAndOtherAssetsAbstract_a819f1" xlink:to="loc_cxdoPrepaidSoftwareServices_0275ae" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidReinsurancePremiums" xlink:label="loc_us-gaapPrepaidReinsurancePremiums_3fcd80" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPrepaidExpenseAndOtherAssetsAbstract_a819f1" xlink:to="loc_us-gaapPrepaidReinsurancePremiums_3fcd80" order="3" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PrepaidNasdaqListingFee" xlink:label="loc_cxdoPrepaidNasdaqListingFee_3de90a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPrepaidExpenseAndOtherAssetsAbstract_a819f1" xlink:to="loc_cxdoPrepaidNasdaqListingFee_3de90a" order="4" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PrepaidexpensesForUserGroupMeeting" xlink:label="loc_cxdoPrepaidexpensesForUserGroupMeeting_45dc42" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPrepaidExpenseAndOtherAssetsAbstract_a819f1" xlink:to="loc_cxdoPrepaidexpensesForUserGroupMeeting_45dc42" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedRentCurrent" xlink:label="loc_us-gaapAccruedRentCurrent_6bdab3" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPrepaidExpenseAndOtherAssetsAbstract_a819f1" xlink:to="loc_us-gaapAccruedRentCurrent_6bdab3" order="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherPrepaidExpenseCurrent" xlink:label="loc_us-gaapOtherPrepaidExpenseCurrent_f8a20d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPrepaidExpenseAndOtherAssetsAbstract_a819f1" xlink:to="loc_us-gaapOtherPrepaidExpenseCurrent_f8a20d" order="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssets" xlink:label="loc_us-gaapPrepaidExpenseAndOtherAssets_b08b5c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPrepaidExpenseAndOtherAssetsAbstract_a819f1" xlink:to="loc_us-gaapPrepaidExpenseAndOtherAssets_b08b5c" order="8" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PropertyAndEquipmentDetails" xlink:title="842039 - Disclosure - Property and Equipment (Details)">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PropertyAndEquipmentAbstract" xlink:label="loc_cxdoPropertyAndEquipmentAbstract_a74dc5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_c2a578" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoPropertyAndEquipmentAbstract_a74dc5" xlink:to="loc_us-gaapStatementTable_c2a578" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_f9e81d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_c2a578" xlink:to="loc_us-gaapStatementLineItems_f9e81d" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis_e7483e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_c2a578" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis_e7483e" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_4c3b4f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis_e7483e" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_4c3b4f" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OfficeEquipmentMember" xlink:label="loc_us-gaapOfficeEquipmentMember_e311a9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_4c3b4f" xlink:to="loc_us-gaapOfficeEquipmentMember_e311a9" order="11" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ComputerSoftwareIntangibleAssetsMember" xlink:label="loc_cxdoComputerSoftwareIntangibleAssetsMember_304335" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_4c3b4f" xlink:to="loc_cxdoComputerSoftwareIntangibleAssetsMember_304335" order="12" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InternalUseComputerSoftwareMember" xlink:label="loc_cxdoInternalUseComputerSoftwareMember_f16414" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_4c3b4f" xlink:to="loc_cxdoInternalUseComputerSoftwareMember_f16414" order="13" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember_9da245" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_4c3b4f" xlink:to="loc_us-gaapLeaseholdImprovementsMember_9da245" order="14" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VehiclesMember" xlink:label="loc_us-gaapVehiclesMember_709761" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_4c3b4f" xlink:to="loc_us-gaapVehiclesMember_709761" order="15" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_6fb66d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_f9e81d" xlink:to="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_6fb66d" order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet_83e3e1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_f9e81d" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet_83e3e1" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaapPropertyPlantAndEquipmentGross_cfc459" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_f9e81d" xlink:to="loc_us-gaapPropertyPlantAndEquipmentGross_cfc459" order="3" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/PropertyAndEquipmentDetailsNarrative" xlink:title="842040 - Disclosure - Property and Equipment (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PropertyAndEquipmentAbstract" xlink:label="loc_cxdoPropertyAndEquipmentAbstract_9eb93d" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="loc_us-gaapDepreciationDepletionAndAmortization_dcb5c9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoPropertyAndEquipmentAbstract_9eb93d" xlink:to="loc_us-gaapDepreciationDepletionAndAmortization_dcb5c9" order="1" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails" xlink:title="842041 - Disclosure - Intangible Assets and Goodwill (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_51debd" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_cf53cf" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_51debd" xlink:to="loc_us-gaapStatementTable_cf53cf" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_bed917" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_cf53cf" xlink:to="loc_us-gaapStatementLineItems_bed917" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis_4fd1b9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_cf53cf" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis_4fd1b9" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_1ed75c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis_4fd1b9" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_1ed75c" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaapCustomerRelationshipsMember_ea2a69" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_1ed75c" xlink:to="loc_us-gaapCustomerRelationshipsMember_ea2a69" order="11" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DevelopedTechnologiesMember" xlink:label="loc_cxdoDevelopedTechnologiesMember_54b1b2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_1ed75c" xlink:to="loc_cxdoDevelopedTechnologiesMember_54b1b2" order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TrademarkAndTradeNamesMember" xlink:label="loc_cxdoTrademarkAndTradeNamesMember_ac700f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_1ed75c" xlink:to="loc_cxdoTrademarkAndTradeNamesMember_ac700f" order="13" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TotalacquiredintangibleassetsMember" xlink:label="loc_cxdoTotalacquiredintangibleassetsMember_2ef30b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_1ed75c" xlink:to="loc_cxdoTotalacquiredintangibleassetsMember_2ef30b" order="14" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsGross_673e2e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_bed917" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsGross_673e2e" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization_057fc9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_bed917" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization_057fc9" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsNet_fa3e17" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_bed917" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsNet_fa3e17" order="3" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1" xlink:title="842042 - Disclosure - Intangible Assets and Goodwill (Details 1)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_8f212f" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_ef9611" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_8f212f" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_ef9611" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_5070a9" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_8f212f" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_5070a9" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearThree_811f44" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_8f212f" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearThree_811f44" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearFour_7d15be" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_8f212f" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearFour_7d15be" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearFive_5d6314" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_8f212f" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseYearFive_5d6314" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_3aa533" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_8f212f" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_3aa533" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsNet_87e3b6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_8f212f" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsNet_87e3b6" order="7" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails2" xlink:title="842043 - Disclosure - Intangible Assets and Goodwill (Details 2)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_2ac0d1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GoodwillBeginningBalance" xlink:label="loc_cxdoGoodwillBeginningBalance_0e81bf" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_2ac0d1" xlink:to="loc_cxdoGoodwillBeginningBalance_0e81bf" order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GoodwillAdditions" xlink:label="loc_cxdoGoodwillAdditions_d7631f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_2ac0d1" xlink:to="loc_cxdoGoodwillAdditions_d7631f" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_GoodwillEndingBalance" xlink:label="loc_cxdoGoodwillEndingBalance_11bc5b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_2ac0d1" xlink:to="loc_cxdoGoodwillEndingBalance_11bc5b" order="3" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" xlink:title="842044 - Disclosure - Intangible Assets and Goodwill (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_f05d7d" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_b4dcc5" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGoodwillAndIntangibleAssetsDisclosureAbstract_f05d7d" xlink:to="loc_us-gaapStatementTable_b4dcc5" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_00314e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_b4dcc5" xlink:to="loc_us-gaapStatementLineItems_00314e" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaapIncomeStatementLocationAxis_521211" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_b4dcc5" xlink:to="loc_us-gaapIncomeStatementLocationAxis_521211" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaapIncomeStatementLocationDomain_88c45f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementLocationAxis_521211" xlink:to="loc_us-gaapIncomeStatementLocationDomain_88c45f" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="loc_us-gaapSellingAndMarketingExpenseMember_2247d3" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementLocationDomain_88c45f" xlink:to="loc_us-gaapSellingAndMarketingExpenseMember_2247d3" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaapGeneralAndAdministrativeExpenseMember_0b84d2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementLocationDomain_88c45f" xlink:to="loc_us-gaapGeneralAndAdministrativeExpenseMember_0b84d2" order="22" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionsRevenueMember" xlink:label="loc_cxdoSoftwareSolutionsRevenueMember_a2b08b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeStatementLocationDomain_88c45f" xlink:to="loc_cxdoSoftwareSolutionsRevenueMember_a2b08b" order="23" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AmortizationOfIntangibleAssetsDevelopedTechnology" xlink:label="loc_cxdoAmortizationOfIntangibleAssetsDevelopedTechnology_b7df71" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_00314e" xlink:to="loc_cxdoAmortizationOfIntangibleAssetsDevelopedTechnology_b7df71" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AmortizationOfIntangibleAssetsCustomerRelationships" xlink:label="loc_cxdoAmortizationOfIntangibleAssetsCustomerRelationships_60306b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_00314e" xlink:to="loc_cxdoAmortizationOfIntangibleAssetsCustomerRelationships_60306b" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DevelopedTechnologies" xlink:label="loc_cxdoDevelopedTechnologies_fb8507" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_00314e" xlink:to="loc_cxdoDevelopedTechnologies_fb8507" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TrademarksAndTradeNames" xlink:label="loc_cxdoTrademarksAndTradeNames_3aa922" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_00314e" xlink:to="loc_cxdoTrademarksAndTradeNames_3aa922" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaapAcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_0298e1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_00314e" xlink:to="loc_us-gaapAcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife_0298e1" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AmortizationOfIntangibleAssetsTrademarksAndTradeNames" xlink:label="loc_cxdoAmortizationOfIntangibleAssetsTrademarksAndTradeNames_e5c319" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_00314e" xlink:to="loc_cxdoAmortizationOfIntangibleAssetsTrademarksAndTradeNames_e5c319" order="6" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpensesDetails" xlink:title="842045 - Disclosure - Accrued Expenses (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaapPayablesAndAccrualsAbstract_605deb" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="loc_us-gaapEmployeeRelatedLiabilitiesCurrent_385e67" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_605deb" xlink:to="loc_us-gaapEmployeeRelatedLiabilitiesCurrent_385e67" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AccruedAccountsPayable" xlink:label="loc_cxdoAccruedAccountsPayable_491ae0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_605deb" xlink:to="loc_cxdoAccruedAccountsPayable_491ae0" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesAndExciseTaxPayableCurrent" xlink:label="loc_us-gaapSalesAndExciseTaxPayableCurrent_3f3e1c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_605deb" xlink:to="loc_us-gaapSalesAndExciseTaxPayableCurrent_3f3e1c" order="3" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ProductWarrantyAccrual1" xlink:label="loc_cxdoProductWarrantyAccrual1_b84d94" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_605deb" xlink:to="loc_cxdoProductWarrantyAccrual1_b84d94" order="4" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CloudComputingArrangements" xlink:label="loc_cxdoCloudComputingArrangements_8d4941" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_605deb" xlink:to="loc_cxdoCloudComputingArrangements_8d4941" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CreditCards" xlink:label="loc_cxdoCreditCards_03bd4e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_605deb" xlink:to="loc_cxdoCreditCards_03bd4e" order="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="loc_us-gaapOtherAccruedLiabilitiesCurrent_a4102d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_605deb" xlink:to="loc_us-gaapOtherAccruedLiabilitiesCurrent_a4102d" order="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent" xlink:label="loc_us-gaapOtherAccruedLiabilitiesCurrentAndNoncurrent_92e864" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_605deb" xlink:to="loc_us-gaapOtherAccruedLiabilitiesCurrentAndNoncurrent_92e864" order="8" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpensesDetails1" xlink:title="842046 - Disclosure - Accrued Expenses (Details 1)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaapPayablesAndAccrualsAbstract_fd23de" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="loc_us-gaapProductWarrantyAccrual_28c193" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_fd23de" xlink:to="loc_us-gaapProductWarrantyAccrual_28c193" order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ProductWarrantiesAccrualPeriodIncreaseDecrease" xlink:label="loc_cxdoProductWarrantiesAccrualPeriodIncreaseDecrease_b062ee" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_fd23de" xlink:to="loc_cxdoProductWarrantiesAccrualPeriodIncreaseDecrease_b062ee" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentOfWarrantsGrantedForServices" xlink:label="loc_us-gaapAdjustmentOfWarrantsGrantedForServices_8e9fd1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_fd23de" xlink:to="loc_us-gaapAdjustmentOfWarrantsGrantedForServices_8e9fd1" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrualPayments" xlink:label="loc_us-gaapProductWarrantyAccrualPayments_e74b0f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_fd23de" xlink:to="loc_us-gaapProductWarrantyAccrualPayments_e74b0f" order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="loc_us-gaapProductWarrantyAccrual_952be0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_fd23de" xlink:to="loc_us-gaapProductWarrantyAccrual_952be0" order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpensesDetailsNarrative" xlink:title="842047 - Disclosure - Accrued Expenses (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="loc_us-gaapPayablesAndAccrualsAbstract_04e718" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyExpense" xlink:label="loc_us-gaapProductWarrantyExpense_22ee1f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPayablesAndAccrualsAbstract_04e718" xlink:to="loc_us-gaapProductWarrantyExpense_22ee1f" order="1" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayableDetails" xlink:title="842048 - Disclosure - Notes Payable (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract_0f012c" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_NotesPayableRelatedPartyClassifiedCurrent" xlink:label="loc_cxdoNotesPayableRelatedPartyClassifiedCurrent_f1a74b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_0f012c" xlink:to="loc_cxdoNotesPayableRelatedPartyClassifiedCurrent_f1a74b" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNotesPayable" xlink:label="loc_us-gaapOtherNotesPayable_8b4714" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_0f012c" xlink:to="loc_us-gaapOtherNotesPayable_8b4714" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NotesPayable" xlink:label="loc_us-gaapNotesPayable_7be821" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_0f012c" xlink:to="loc_us-gaapNotesPayable_7be821" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NotesPayableCurrent" xlink:label="loc_us-gaapNotesPayableCurrent_90b72a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_0f012c" xlink:to="loc_us-gaapNotesPayableCurrent_90b72a" order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SecuredLongTermDebt" xlink:label="loc_us-gaapSecuredLongTermDebt_d45e40" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_0f012c" xlink:to="loc_us-gaapSecuredLongTermDebt_d45e40" order="5" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayableDetails1" xlink:title="842049 - Disclosure - Notes Payable (Details 1)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract_1ce399" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_04cd44" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_1ce399" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths_04cd44" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_10f455" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_1ce399" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo_10f455" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_8a9b40" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_1ce399" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree_8a9b40" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_bdf205" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_1ce399" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour_bdf205" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive" xlink:label="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_df2c90" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_1ce399" xlink:to="loc_us-gaapLongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive_df2c90" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermDebt" xlink:label="loc_us-gaapLongTermDebt_ef7457" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_1ce399" xlink:to="loc_us-gaapLongTermDebt_ef7457" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayableDetailsNarrative" xlink:title="842050 - Disclosure - Notes Payable (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="loc_us-gaapDebtDisclosureAbstract_295165" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_46702c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapDebtDisclosureAbstract_295165" xlink:to="loc_us-gaapStatementTable_46702c" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_6d981f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_46702c" xlink:to="loc_us-gaapStatementLineItems_6d981f" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaapBusinessAcquisitionAxis_a2dc83" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_46702c" xlink:to="loc_us-gaapBusinessAcquisitionAxis_a2dc83" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaapBusinessAcquisitionAcquireeDomain_c7c73f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionAxis_a2dc83" xlink:to="loc_us-gaapBusinessAcquisitionAcquireeDomain_c7c73f" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateAxis" xlink:label="loc_us-gaapAwardDateAxis_c434c4" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_46702c" xlink:to="loc_us-gaapAwardDateAxis_c434c4" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateDomain" xlink:label="loc_us-gaapAwardDateDomain_9d8e97" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateAxis_c434c4" xlink:to="loc_us-gaapAwardDateDomain_9d8e97" order="30" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllegiantNetworksBusinessAcquisitionMember" xlink:label="loc_cxdoAllegiantNetworksBusinessAcquisitionMember_3e2a53" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapBusinessAcquisitionAcquireeDomain_c7c73f" xlink:to="loc_cxdoAllegiantNetworksBusinessAcquisitionMember_3e2a53" order="31" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_NovemberOneTwoThousandTwentyTwoMember" xlink:label="loc_cxdoNovemberOneTwoThousandTwentyTwoMember_330559" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateDomain_9d8e97" xlink:to="loc_cxdoNovemberOneTwoThousandTwentyTwoMember_330559" order="32" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember" xlink:label="loc_cxdoOnFebruaryTwentySevenTwoThousandTwentyThreeMember_b290ac" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateDomain_9d8e97" xlink:to="loc_cxdoOnFebruaryTwentySevenTwoThousandTwentyThreeMember_b290ac" order="33" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_NotesPayableRelatedPartyClassifiedCurrent" xlink:label="loc_cxdoNotesPayableRelatedPartyClassifiedCurrent_cc132d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_6d981f" xlink:to="loc_cxdoNotesPayableRelatedPartyClassifiedCurrent_cc132d" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AgreementTerm" xlink:label="loc_cxdoAgreementTerm_8d8d7d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_6d981f" xlink:to="loc_cxdoAgreementTerm_8d8d7d" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PromissoryNote" xlink:label="loc_cxdoPromissoryNote_9a7e1e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_6d981f" xlink:to="loc_cxdoPromissoryNote_9a7e1e" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentInterestRateDuringPeriod" xlink:label="loc_us-gaapDebtInstrumentInterestRateDuringPeriod_7da010" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_6d981f" xlink:to="loc_us-gaapDebtInstrumentInterestRateDuringPeriod_7da010" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForRestructuring" xlink:label="loc_us-gaapPaymentsForRestructuring_b4c65a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_6d981f" xlink:to="loc_us-gaapPaymentsForRestructuring_b4c65a" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xlink:label="loc_us-gaapDebtInstrumentPeriodicPaymentPrincipal_e36e05" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_6d981f" xlink:to="loc_us-gaapDebtInstrumentPeriodicPaymentPrincipal_e36e05" order="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPaid" xlink:label="loc_us-gaapInterestPaid_5d2fbe" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_6d981f" xlink:to="loc_us-gaapInterestPaid_5d2fbe" order="7" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LineOfCreditDetailsNarrative" xlink:title="842051 - Disclosure - Line of Credit (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_LineOfCreditAbstract" xlink:label="loc_cxdoLineOfCreditAbstract_67e391" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding" xlink:label="loc_us-gaapLineOfCreditFacilityFairValueOfAmountOutstanding_3a489d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoLineOfCreditAbstract_67e391" xlink:to="loc_us-gaapLineOfCreditFacilityFairValueOfAmountOutstanding_3a489d" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod" xlink:label="loc_us-gaapLineOfCreditFacilityMaximumAmountOutstandingDuringPeriod_5b9b51" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoLineOfCreditAbstract_67e391" xlink:to="loc_us-gaapLineOfCreditFacilityMaximumAmountOutstandingDuringPeriod_5b9b51" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityExpirationDate1" xlink:label="loc_us-gaapLineOfCreditFacilityExpirationDate1_aa6483" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoLineOfCreditAbstract_67e391" xlink:to="loc_us-gaapLineOfCreditFacilityExpirationDate1_aa6483" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityInterestRateDuringPeriod" xlink:label="loc_us-gaapLineOfCreditFacilityInterestRateDuringPeriod_d07c52" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoLineOfCreditAbstract_67e391" xlink:to="loc_us-gaapLineOfCreditFacilityInterestRateDuringPeriod_d07c52" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="loc_us-gaapLineOfCreditFacilityRemainingBorrowingCapacity_60ef3f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cxdoLineOfCreditAbstract_67e391" xlink:to="loc_us-gaapLineOfCreditFacilityRemainingBorrowingCapacity_60ef3f" order="5" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/FairValueMeasurementsDetails" xlink:title="842052 - Disclosure - Fair Value Measurements (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueDisclosuresAbstract" xlink:label="loc_us-gaapFairValueDisclosuresAbstract_b3f2ee" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_84bdb8" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapFairValueDisclosuresAbstract_b3f2ee" xlink:to="loc_us-gaapStatementTable_84bdb8" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_4a8a2e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_84bdb8" xlink:to="loc_us-gaapStatementLineItems_4a8a2e" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaapPlanNameAxis_fdd2a0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_84bdb8" xlink:to="loc_us-gaapPlanNameAxis_fdd2a0" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain_d35b08" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPlanNameAxis_fdd2a0" xlink:to="loc_us-gaapPlanNameDomain_d35b08" order="10" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CarryingReportedAmountsFairValueDisclosureMember" xlink:label="loc_cxdoCarryingReportedAmountsFairValueDisclosureMember_f3701d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPlanNameDomain_d35b08" xlink:to="loc_cxdoCarryingReportedAmountsFairValueDisclosureMember_f3701d" order="11" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EstimateOfFairValueFairValueDisclosuresMember" xlink:label="loc_cxdoEstimateOfFairValueFairValueDisclosuresMember_fee96e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPlanNameDomain_d35b08" xlink:to="loc_cxdoEstimateOfFairValueFairValueDisclosuresMember_fee96e" order="12" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableFairValueDisclosure" xlink:label="loc_us-gaapAccountsReceivableFairValueDisclosure_4df809" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4a8a2e" xlink:to="loc_us-gaapAccountsReceivableFairValueDisclosure_4df809" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivableFairValueDisclosure" xlink:label="loc_cxdoEquipmentFinancingReceivableFairValueDisclosure_10b9fa" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4a8a2e" xlink:to="loc_cxdoEquipmentFinancingReceivableFairValueDisclosure_10b9fa" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FinanceLeasesFairValueDisclosure" xlink:label="loc_cxdoFinanceLeasesFairValueDisclosure_a0b0b2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4a8a2e" xlink:to="loc_cxdoFinanceLeasesFairValueDisclosure_a0b0b2" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NotesPayableFairValueDisclosure" xlink:label="loc_us-gaapNotesPayableFairValueDisclosure_8077de" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_4a8a2e" xlink:to="loc_us-gaapNotesPayableFairValueDisclosure_8077de" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/IncomeTaxesDetailsNarrative" xlink:title="842053 - Disclosure - Income Taxes (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="loc_us-gaapIncomeTaxDisclosureAbstract_383bfa" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="loc_us-gaapEffectiveIncomeTaxRateContinuingOperations_d046f4" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract_383bfa" xlink:to="loc_us-gaapEffectiveIncomeTaxRateContinuingOperations_d046f4" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DeferredTaxAssetValuationAllowance" xlink:label="loc_cxdoDeferredTaxAssetValuationAllowance_027b4c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract_383bfa" xlink:to="loc_cxdoDeferredTaxAssetValuationAllowance_027b4c" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DeferredTaxesRealizableAmount" xlink:label="loc_cxdoDeferredTaxesRealizableAmount_c34025" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract_383bfa" xlink:to="loc_cxdoDeferredTaxesRealizableAmount_c34025" order="3" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncomeTaxBenefitProvisions" xlink:label="loc_cxdoIncomeTaxBenefitProvisions_af9884" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxDisclosureAbstract_383bfa" xlink:to="loc_cxdoIncomeTaxBenefitProvisions_af9884" order="4" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesDetails" xlink:title="842054 - Disclosure - Leases (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaapLeasesAbstract_f1759b" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:label="loc_us-gaapOperatingLeaseLiabilitiesPaymentsDueAbstract_9b2f16" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapOperatingLeaseLiabilitiesPaymentsDueAbstract_9b2f16" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_e93967" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_e93967" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearTwo_231f3c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearTwo_231f3c" order="3" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearThree_748d22" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearThree_748d22" order="4" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFour_1f7f84" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFour_1f7f84" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFive_efc6ac" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDueYearFive_efc6ac" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue_ad993d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityPaymentsDue_ad993d" order="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="loc_us-gaapLesseeOperatingLeaseLiabilityUndiscountedExcessAmount_c8e446" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapLesseeOperatingLeaseLiabilityUndiscountedExcessAmount_c8e446" order="8" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="loc_us-gaapOperatingLeaseLiability_6142be" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapOperatingLeaseLiability_6142be" order="9" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract" xlink:label="loc_us-gaapFinanceLeaseLiabilitiesPaymentsDueAbstract_ec831f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapFinanceLeaseLiabilitiesPaymentsDueAbstract_ec831f" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="loc_us-gaapFinanceLeaseLiabilityPaymentsDueNextTwelveMonths_2ae54d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapFinanceLeaseLiabilityPaymentsDueNextTwelveMonths_2ae54d" order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearTwo_179102" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearTwo_179102" order="12" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearThree_8e8b0f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearThree_8e8b0f" order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearFour_1a5cd4" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearFour_1a5cd4" order="14" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive" xlink:label="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearFive_7528b0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapFinanceLeaseLiabilityPaymentsDueYearFive_7528b0" order="15" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="loc_us-gaapFinanceLeaseLiabilityPaymentsDue_2181cf" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapFinanceLeaseLiabilityPaymentsDue_2181cf" order="16" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:label="loc_us-gaapFinanceLeaseLiabilityUndiscountedExcessAmount_c7d8b5" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapFinanceLeaseLiabilityUndiscountedExcessAmount_c7d8b5" order="17" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability" xlink:label="loc_us-gaapFinanceLeaseLiability_af8ffd" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f1759b" xlink:to="loc_us-gaapFinanceLeaseLiability_af8ffd" order="18" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesDetails1" xlink:title="842055 - Disclosure - Leases (Details 1)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaapLeasesAbstract_0e124e" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OperatingLeaseWeightedAverageRemainingLeaseTerm" xlink:label="loc_cxdoOperatingLeaseWeightedAverageRemainingLeaseTerm_f2f6b6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_0e124e" xlink:to="loc_cxdoOperatingLeaseWeightedAverageRemainingLeaseTerm_f2f6b6" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FinanceLeaseWeightedAverageRemainingLeaseTerm" xlink:label="loc_cxdoFinanceLeaseWeightedAverageRemainingLeaseTerm_6b4032" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_0e124e" xlink:to="loc_cxdoFinanceLeaseWeightedAverageRemainingLeaseTerm_6b4032" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="loc_us-gaapOperatingLeaseWeightedAverageDiscountRatePercent_4c8c61" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_0e124e" xlink:to="loc_us-gaapOperatingLeaseWeightedAverageDiscountRatePercent_4c8c61" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent" xlink:label="loc_us-gaapFinanceLeaseWeightedAverageDiscountRatePercent_c12ae1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_0e124e" xlink:to="loc_us-gaapFinanceLeaseWeightedAverageDiscountRatePercent_c12ae1" order="4" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesDetails2" xlink:title="842056 - Disclosure - Leases (Details 2)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaapLeasesAbstract_f97f11" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OperatingCashFlowsFromOperatingLeases" xlink:label="loc_cxdoOperatingCashFlowsFromOperatingLeases_9b0d48" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f97f11" xlink:to="loc_cxdoOperatingCashFlowsFromOperatingLeases_9b0d48" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OperatingCashFlowsFromFinanceLeases" xlink:label="loc_cxdoOperatingCashFlowsFromFinanceLeases_3cd7ff" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f97f11" xlink:to="loc_cxdoOperatingCashFlowsFromFinanceLeases_3cd7ff" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FinancingCashFlowsFromFinanceLeases" xlink:label="loc_cxdoFinancingCashFlowsFromFinanceLeases_76a3f2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f97f11" xlink:to="loc_cxdoFinancingCashFlowsFromFinanceLeases_76a3f2" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoncashInvestingAndFinancingItemsAbstract" xlink:label="loc_us-gaapNoncashInvestingAndFinancingItemsAbstract_0198f2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f97f11" xlink:to="loc_us-gaapNoncashInvestingAndFinancingItemsAbstract_0198f2" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="loc_us-gaapRightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_d1c3f6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f97f11" xlink:to="loc_us-gaapRightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_d1c3f6" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability" xlink:label="loc_us-gaapRightOfUseAssetObtainedInExchangeForFinanceLeaseLiability_d8b8e5" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_f97f11" xlink:to="loc_us-gaapRightOfUseAssetObtainedInExchangeForFinanceLeaseLiability_d8b8e5" order="6" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesDetailsNarrative" xlink:title="842057 - Disclosure - Leases (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="loc_us-gaapLeasesAbstract_c94137" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_43dc1f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapLeasesAbstract_c94137" xlink:to="loc_us-gaapStatementTable_43dc1f" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_83413c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_43dc1f" xlink:to="loc_us-gaapStatementLineItems_83413c" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RestatementAxis" xlink:label="loc_srtRestatementAxis_8a91fa" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_43dc1f" xlink:to="loc_srtRestatementAxis_8a91fa" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RestatementDomain" xlink:label="loc_srtRestatementDomain_e2fbd3" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRestatementAxis_8a91fa" xlink:to="loc_srtRestatementDomain_e2fbd3" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicDistributionAxis" xlink:label="loc_us-gaapGeographicDistributionAxis_23cdce" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_43dc1f" xlink:to="loc_us-gaapGeographicDistributionAxis_23cdce" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicDistributionDomain" xlink:label="loc_us-gaapGeographicDistributionDomain_c2de85" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGeographicDistributionAxis_23cdce" xlink:to="loc_us-gaapGeographicDistributionDomain_c2de85" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateAxis" xlink:label="loc_us-gaapAwardDateAxis_94f6f0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_43dc1f" xlink:to="loc_us-gaapAwardDateAxis_94f6f0" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateDomain" xlink:label="loc_us-gaapAwardDateDomain_f603b6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateAxis_94f6f0" xlink:to="loc_us-gaapAwardDateDomain_f603b6" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaapPlanNameAxis_74d625" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_43dc1f" xlink:to="loc_us-gaapPlanNameAxis_74d625" order="50" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain_9d3300" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPlanNameAxis_74d625" xlink:to="loc_us-gaapPlanNameDomain_9d3300" order="50" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ScenarioPreviouslyReportedMember" xlink:label="loc_srtScenarioPreviouslyReportedMember_31f8a6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtRestatementDomain_e2fbd3" xlink:to="loc_srtScenarioPreviouslyReportedMember_31f8a6" order="51" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TempeArizoneMember" xlink:label="loc_cxdoTempeArizoneMember_719b3e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGeographicDistributionDomain_c2de85" xlink:to="loc_cxdoTempeArizoneMember_719b3e" order="52" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RestonVirginiaMember" xlink:label="loc_cxdoRestonVirginiaMember_87aa7b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGeographicDistributionDomain_c2de85" xlink:to="loc_cxdoRestonVirginiaMember_87aa7b" order="53" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SanDiegoCaliforniaMember" xlink:label="loc_cxdoSanDiegoCaliforniaMember_c2c6d2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGeographicDistributionDomain_c2de85" xlink:to="loc_cxdoSanDiegoCaliforniaMember_c2c6d2" order="54" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OverlandParkKansasMember" xlink:label="loc_cxdoOverlandParkKansasMember_40d411" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGeographicDistributionDomain_c2de85" xlink:to="loc_cxdoOverlandParkKansasMember_40d411" order="55" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_MichiganLasVegasMember" xlink:label="loc_cxdoMichiganLasVegasMember_f6555f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGeographicDistributionDomain_c2de85" xlink:to="loc_cxdoMichiganLasVegasMember_f6555f" order="56" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OtherOperatingLeasesMember" xlink:label="loc_cxdoOtherOperatingLeasesMember_de2663" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapGeographicDistributionDomain_c2de85" xlink:to="loc_cxdoOtherOperatingLeasesMember_de2663" order="57" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OctoberTwoThousandTwentyFourMember" xlink:label="loc_cxdoOctoberTwoThousandTwentyFourMember_2f6013" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateDomain_f603b6" xlink:to="loc_cxdoOctoberTwoThousandTwentyFourMember_2f6013" order="58" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BottomMember" xlink:label="loc_cxdoBottomMember_33af67" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPlanNameDomain_9d3300" xlink:to="loc_cxdoBottomMember_33af67" order="59" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability" xlink:label="loc_us-gaapFinanceLeaseLiability_f31c47" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_83413c" xlink:to="loc_us-gaapFinanceLeaseLiability_f31c47" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_018691" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_83413c" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment_018691" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentOwnedAccumulatedDepreciation" xlink:label="loc_us-gaapPropertyPlantAndEquipmentOwnedAccumulatedDepreciation_b93059" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_83413c" xlink:to="loc_us-gaapPropertyPlantAndEquipmentOwnedAccumulatedDepreciation_b93059" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherExpenses" xlink:label="loc_us-gaapOtherExpenses_b47bc5" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_83413c" xlink:to="loc_us-gaapOtherExpenses_b47bc5" order="4" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses" xlink:label="loc_cxdoAmortizationExpenseIncludedInGeneralAndAdministrativeExpenses_371982" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_83413c" xlink:to="loc_cxdoAmortizationExpenseIncludedInGeneralAndAdministrativeExpenses_371982" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InterestRateFinanceLeases" xlink:label="loc_cxdoInterestRateFinanceLeases_0be21c" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_83413c" xlink:to="loc_cxdoInterestRateFinanceLeases_0be21c" order="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestExpenseDebt" xlink:label="loc_us-gaapInterestExpenseDebt_21ff64" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_83413c" xlink:to="loc_us-gaapInterestExpenseDebt_21ff64" order="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseExpense" xlink:label="loc_us-gaapOperatingLeaseExpense_091706" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_83413c" xlink:to="loc_us-gaapOperatingLeaseExpense_091706" order="8" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DescriptionOfleaseExpiryDate" xlink:label="loc_cxdoDescriptionOfleaseExpiryDate_f5ef42" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_83413c" xlink:to="loc_cxdoDescriptionOfleaseExpiryDate_f5ef42" order="9" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncrementalBorrowingRate" xlink:label="loc_cxdoIncrementalBorrowingRate_c59fff" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_83413c" xlink:to="loc_cxdoIncrementalBorrowingRate_c59fff" order="10" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InterestExpenseOnMonthlyRentDepositLiabilitiesDescription" xlink:label="loc_cxdoInterestExpenseOnMonthlyRentDepositLiabilitiesDescription_a15152" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_83413c" xlink:to="loc_cxdoInterestExpenseOnMonthlyRentDepositLiabilitiesDescription_a15152" order="11" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OperatingCostsAndExpencesDescription" xlink:label="loc_cxdoOperatingCostsAndExpencesDescription_c28a07" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_83413c" xlink:to="loc_cxdoOperatingCostsAndExpencesDescription_c28a07" order="12" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostsAndExpenses" xlink:label="loc_us-gaapCostsAndExpenses_0baccd" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_83413c" xlink:to="loc_us-gaapCostsAndExpenses_0baccd" order="13" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative" xlink:title="842058 - Disclosure - Commitments and Contingencies (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract_75d2c0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_1af1bd" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapCommitmentsAndContingenciesDisclosureAbstract_75d2c0" xlink:to="loc_us-gaapStatementTable_1af1bd" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_3ba551" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_1af1bd" xlink:to="loc_us-gaapStatementLineItems_3ba551" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis_3abfa0" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_1af1bd" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis_3abfa0" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain_1d8e82" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis_3abfa0" xlink:to="loc_us-gaapRelatedPartyDomain_1d8e82" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateAxis" xlink:label="loc_us-gaapAwardDateAxis_9f7f7b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_1af1bd" xlink:to="loc_us-gaapAwardDateAxis_9f7f7b" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateDomain" xlink:label="loc_us-gaapAwardDateDomain_b53d55" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateAxis_9f7f7b" xlink:to="loc_us-gaapAwardDateDomain_b53d55" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaapPlanNameAxis_71c41f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_1af1bd" xlink:to="loc_us-gaapPlanNameAxis_71c41f" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain_c77b7b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPlanNameAxis_71c41f" xlink:to="loc_us-gaapPlanNameDomain_c77b7b" order="40" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OracleMemberMember" xlink:label="loc_cxdoOracleMemberMember_c20e2a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain_1d8e82" xlink:to="loc_cxdoOracleMemberMember_c20e2a" order="41" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DecemberThirtyOneTwoThousandTwentyFourMember" xlink:label="loc_cxdoDecemberThirtyOneTwoThousandTwentyFourMember_d70755" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapAwardDateDomain_b53d55" xlink:to="loc_cxdoDecemberThirtyOneTwoThousandTwentyFourMember_d70755" order="42" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BonusPlanMember" xlink:label="loc_cxdoBonusPlanMember_333ff6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPlanNameDomain_c77b7b" xlink:to="loc_cxdoBonusPlanMember_333ff6" order="43" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BoardOfDirectorsMember" xlink:label="loc_cxdoBoardOfDirectorsMember_e072da" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapRelatedPartyDomain_1d8e82" xlink:to="loc_cxdoBoardOfDirectorsMember_e072da" order="44" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligation" xlink:label="loc_us-gaapPurchaseObligation_de8ef1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_3ba551" xlink:to="loc_us-gaapPurchaseObligation_de8ef1" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BonusDescription" xlink:label="loc_cxdoBonusDescription_2e7c3b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_3ba551" xlink:to="loc_cxdoBonusDescription_2e7c3b" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BonusAwardDescription" xlink:label="loc_cxdoBonusAwardDescription_7b8848" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_3ba551" xlink:to="loc_cxdoBonusAwardDescription_7b8848" order="3" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ServiceContractAmount" xlink:label="loc_cxdoServiceContractAmount_cc3bb1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_3ba551" xlink:to="loc_cxdoServiceContractAmount_cc3bb1" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccretionExpense" xlink:label="loc_us-gaapAccretionExpense_a341bb" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_3ba551" xlink:to="loc_us-gaapAccretionExpense_a341bb" order="5" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DescriptionRelatedToNoncancellableServiceContractFutureAmount" xlink:label="loc_cxdoDescriptionRelatedToNoncancellableServiceContractFutureAmount_3c4245" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_3ba551" xlink:to="loc_cxdoDescriptionRelatedToNoncancellableServiceContractFutureAmount_3c4245" order="6" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SegmentReportingDetails" xlink:title="842059 - Disclosure - Segment Reporting (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract_41d733" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_a90ae5" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentReportingAbstract_41d733" xlink:to="loc_us-gaapStatementTable_a90ae5" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_2cad7e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_a90ae5" xlink:to="loc_us-gaapStatementLineItems_2cad7e" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srtProductOrServiceAxis_8a751b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_a90ae5" xlink:to="loc_srtProductOrServiceAxis_8a751b" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain_032334" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductOrServiceAxis_8a751b" xlink:to="loc_srtProductsAndServicesDomain_032334" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaapStatementBusinessSegmentsAxis_dc568e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_a90ae5" xlink:to="loc_us-gaapStatementBusinessSegmentsAxis_dc568e" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain_2823f4" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis_dc568e" xlink:to="loc_us-gaapSegmentDomain_2823f4" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis_78176d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_a90ae5" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis_78176d" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_f62b4d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis_78176d" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_f62b4d" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ServiceMember" xlink:label="loc_us-gaapServiceMember_27a7a1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductsAndServicesDomain_032334" xlink:to="loc_us-gaapServiceMember_27a7a1" order="41" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CloudTelecommunicationsServiceSegmentMember" xlink:label="loc_cxdoCloudTelecommunicationsServiceSegmentMember_21e31f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentDomain_2823f4" xlink:to="loc_cxdoCloudTelecommunicationsServiceSegmentMember_21e31f" order="42" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionSegmentMember" xlink:label="loc_cxdoSoftwareSolutionSegmentMember_fe1c9a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentDomain_2823f4" xlink:to="loc_cxdoSoftwareSolutionSegmentMember_fe1c9a" order="43" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="loc_us-gaapSoftwareDevelopmentMember_ef3816" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_f62b4d" xlink:to="loc_us-gaapSoftwareDevelopmentMember_ef3816" order="44" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductMember" xlink:label="loc_us-gaapProductMember_8fa56e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtProductsAndServicesDomain_032334" xlink:to="loc_us-gaapProductMember_8fa56e" order="45" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Revenues" xlink:label="loc_us-gaapRevenues_74027b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapRevenues_74027b" order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="loc_us-gaapOperatingExpensesAbstract_7835bc" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapOperatingExpensesAbstract_7835bc" order="2" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeBenefitsAndShareBasedCompensation" xlink:label="loc_us-gaapEmployeeBenefitsAndShareBasedCompensation_591753" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapEmployeeBenefitsAndShareBasedCompensation_591753" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoninterestExpenseCommissionExpense" xlink:label="loc_us-gaapNoninterestExpenseCommissionExpense_33a270" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapNoninterestExpenseCommissionExpense_33a270" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfessionalAndContractServicesExpense" xlink:label="loc_us-gaapProfessionalAndContractServicesExpense_e97862" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapProfessionalAndContractServicesExpense_e97862" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherDepreciationAndAmortization" xlink:label="loc_us-gaapOtherDepreciationAndAmortization_b84c3f" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapOtherDepreciationAndAmortization_b84c3f" order="6" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingOtherItemAmount" xlink:label="loc_us-gaapSegmentReportingOtherItemAmount_b566c7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapSegmentReportingOtherItemAmount_b566c7" order="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaapOperatingExpenses_ce095b" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapOperatingExpenses_ce095b" order="8" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaapOperatingIncomeLoss_67f155" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapOperatingIncomeLoss_67f155" order="9" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeOther" xlink:label="loc_us-gaapInterestIncomeOther_3f5009" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapInterestIncomeOther_3f5009" order="10" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeExpenseNet" xlink:label="loc_us-gaapInterestIncomeExpenseNet_0feeec" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapInterestIncomeExpenseNet_0feeec" order="11" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherOperatingIncomeExpenseNet" xlink:label="loc_us-gaapOtherOperatingIncomeExpenseNet_fcc43a" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapOtherOperatingIncomeExpenseNet_fcc43a" order="12" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_22156d" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_22156d" order="13" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit_933022" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit_933022" order="14" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss_313b96" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_2cad7e" xlink:to="loc_us-gaapNetIncomeLoss_313b96" order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://cxdo.com/role/SegmentReportingDetails1" xlink:title="842060 - Disclosure - Segment Reporting (Details 1)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingAbstract" xlink:label="loc_us-gaapSegmentReportingAbstract_9754d4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable_8a7496" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapSegmentReportingAbstract_9754d4" xlink:to="loc_us-gaapStatementTable_8a7496" order="100" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems_b78ab7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_8a7496" xlink:to="loc_us-gaapStatementLineItems_b78ab7" order="2000" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaapIncomeTaxAuthorityNameAxis_84850e" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_8a7496" xlink:to="loc_us-gaapIncomeTaxAuthorityNameAxis_84850e" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain_96cd79" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis_84850e" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain_96cd79" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis_3fbbf7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementTable_8a7496" xlink:to="loc_srtStatementGeographicalAxis_3fbbf7" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain_98e8f7" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtStatementGeographicalAxis_3fbbf7" xlink:to="loc_srtSegmentGeographicalDomain_98e8f7" order="30" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InternationalMember" xlink:label="loc_cxdoInternationalMember_8b9529" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain_96cd79" xlink:to="loc_cxdoInternationalMember_8b9529" order="31" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="loc_countryUS_a83442" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srtSegmentGeographicalDomain_98e8f7" xlink:to="loc_countryUS_a83442" order="32" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Revenues" xlink:label="loc_us-gaapRevenues_efc6c6" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaapStatementLineItems_b78ab7" xlink:to="loc_us-gaapRevenues_efc6c6" order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>10
<FILENAME>cxdo-20250331_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii" standalone="yes"?>
<!--XBRL Document Created with XBRLMaster-->
<!--Version: 2.3.08-->
<!--Based on XBRL 2.1-->
<!--Date of creation: 05/05/2025-->
<!--Software architectural design and coding: A'c Dharmapremananda Avt.-->
<!--Copyright (c) 2025 I-NET Business Solutions, Inc. All Rights Reserved.-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" 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:roleRef roleURI="http://cxdo.com/role/Cover" xlink:href="cxdo-20250331.xsd#Cover" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedBalanceSheets" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedBalanceSheets" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedStatementsOfOperationsUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited" xlink:href="cxdo-20250331.xsd#ConsolidatedStatementsOfStockholdersEquityUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:href="cxdo-20250331.xsd#CondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPolicies" xlink:href="cxdo-20250331.xsd#SignificantAccountingPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/Revenue" xlink:href="cxdo-20250331.xsd#Revenue" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EarningsPerCommonShare" xlink:href="cxdo-20250331.xsd#EarningsPerCommonShare" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLosses" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLosses" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLosses" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLosses" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PrepaidExpenses" xlink:href="cxdo-20250331.xsd#PrepaidExpenses" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PropertyAndEquipment" xlink:href="cxdo-20250331.xsd#PropertyAndEquipment" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwill" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwill" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpenses" xlink:href="cxdo-20250331.xsd#AccruedExpenses" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayable" xlink:href="cxdo-20250331.xsd#NotesPayable" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LineOfCredit" xlink:href="cxdo-20250331.xsd#LineOfCredit" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/FairValueMeasurements" xlink:href="cxdo-20250331.xsd#FairValueMeasurements" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IncomeTaxes" xlink:href="cxdo-20250331.xsd#IncomeTaxes" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/Leases" xlink:href="cxdo-20250331.xsd#Leases" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CommitmentsAndContingencies" xlink:href="cxdo-20250331.xsd#CommitmentsAndContingencies" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SegmentReporting" xlink:href="cxdo-20250331.xsd#SegmentReporting" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesPolicies" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesPolicies" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesTables" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueTables" xlink:href="cxdo-20250331.xsd#RevenueTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EarningsPerCommonShareTables" xlink:href="cxdo-20250331.xsd#EarningsPerCommonShareTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLossesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PrepaidExpensesTables" xlink:href="cxdo-20250331.xsd#PrepaidExpensesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PropertyAndEquipmentTables" xlink:href="cxdo-20250331.xsd#PropertyAndEquipmentTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillTables" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpensesTables" xlink:href="cxdo-20250331.xsd#AccruedExpensesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayableTables" xlink:href="cxdo-20250331.xsd#NotesPayableTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/FairValueMeasurementsTables" xlink:href="cxdo-20250331.xsd#FairValueMeasurementsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesTables" xlink:href="cxdo-20250331.xsd#LeasesTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SegmentsTables" xlink:href="cxdo-20250331.xsd#SegmentsTables" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesDetails" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesDetails1" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:href="cxdo-20250331.xsd#SignificantAccountingPoliciesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails" xlink:href="cxdo-20250331.xsd#RevenueDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails1" xlink:href="cxdo-20250331.xsd#RevenueDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails2" xlink:href="cxdo-20250331.xsd#RevenueDetails2" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails3" xlink:href="cxdo-20250331.xsd#RevenueDetails3" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails4" xlink:href="cxdo-20250331.xsd#RevenueDetails4" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetails5" xlink:href="cxdo-20250331.xsd#RevenueDetails5" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/RevenueDetailsNarrative" xlink:href="cxdo-20250331.xsd#RevenueDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EarningsPerCommonShareDetails" xlink:href="cxdo-20250331.xsd#EarningsPerCommonShareDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EarningsPerCommonShareDetails1" xlink:href="cxdo-20250331.xsd#EarningsPerCommonShareDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLossesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails1" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLossesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:href="cxdo-20250331.xsd#TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:href="cxdo-20250331.xsd#EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PrepaidExpensesDetails" xlink:href="cxdo-20250331.xsd#PrepaidExpensesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PropertyAndEquipmentDetails" xlink:href="cxdo-20250331.xsd#PropertyAndEquipmentDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/PropertyAndEquipmentDetailsNarrative" xlink:href="cxdo-20250331.xsd#PropertyAndEquipmentDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails2" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillDetails2" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" xlink:href="cxdo-20250331.xsd#IntangibleAssetsAndGoodwillDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpensesDetails" xlink:href="cxdo-20250331.xsd#AccruedExpensesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpensesDetails1" xlink:href="cxdo-20250331.xsd#AccruedExpensesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/AccruedExpensesDetailsNarrative" xlink:href="cxdo-20250331.xsd#AccruedExpensesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayableDetails" xlink:href="cxdo-20250331.xsd#NotesPayableDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayableDetails1" xlink:href="cxdo-20250331.xsd#NotesPayableDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/NotesPayableDetailsNarrative" xlink:href="cxdo-20250331.xsd#NotesPayableDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LineOfCreditDetailsNarrative" xlink:href="cxdo-20250331.xsd#LineOfCreditDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/FairValueMeasurementsDetails" xlink:href="cxdo-20250331.xsd#FairValueMeasurementsDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/IncomeTaxesDetailsNarrative" xlink:href="cxdo-20250331.xsd#IncomeTaxesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesDetails" xlink:href="cxdo-20250331.xsd#LeasesDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesDetails1" xlink:href="cxdo-20250331.xsd#LeasesDetails1" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesDetails2" xlink:href="cxdo-20250331.xsd#LeasesDetails2" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/LeasesDetailsNarrative" xlink:href="cxdo-20250331.xsd#LeasesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative" xlink:href="cxdo-20250331.xsd#CommitmentsAndContingenciesDetailsNarrative" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SegmentReportingDetails" xlink:href="cxdo-20250331.xsd#SegmentReportingDetails" xlink:type="simple" />
  <link:roleRef roleURI="http://cxdo.com/role/SegmentReportingDetails1" xlink:href="cxdo-20250331.xsd#SegmentReportingDetails1" xlink:type="simple" />
  <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" />
  <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" />
  <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" />
  <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" arcroleURI="http://xbrl.org/int/dim/arcrole/all" />
  <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#notAll" arcroleURI="http://xbrl.org/int/dim/arcrole/notAll" />
  <link:arcroleRef xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/Cover" xlink:title="00000001 - Document - Cover Page Information">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="loc_deiCover" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedBalanceSheets" xlink:title="110200 - Statement - Condensed Consolidated Balance Sheets" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:title="110201 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited" xlink:title="124100 - Statement - Condensed Consolidated Statements of Operations (Unaudited)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited" xlink:title="148400 - Statement - Condensed Consolidated Statements of Comprehensive Income(Loss) (Unaudited)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited" xlink:title="148600 - Statement - Consolidated Statements of Stockholders' Equity (Unaudited)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="loc_us-gaapStatementEquityComponentsAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementEquityComponentsAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="loc_us-gaapEquityComponentDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapStatementEquityComponentsAxis" xlink:to="loc_us-gaapEquityComponentDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="loc_us-gaapCommonStockMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapCommonStockMember" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="loc_us-gaapAdditionalPaidInCapitalMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapAdditionalPaidInCapitalMember" order="22" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapAccumulatedOtherComprehensiveIncomeMember" order="23" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="loc_us-gaapRetainedEarningsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapEquityComponentDomain" xlink:to="loc_us-gaapRetainedEarningsMember" order="24" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesIssued" xlink:label="loc_us-gaapSharesIssued" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapSharesIssued" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="loc_us-gaapStockholdersEquity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockholdersEquity" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="loc_us-gaapAdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodSharesStockOptionsExercised" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:label="loc_us-gaapStockIssuedDuringPeriodValueStockOptionsExercised" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStockIssuedDuringPeriodValueStockOptionsExercised" order="6" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" xlink:label="loc_cxdoTaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoTaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits" order="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapNetIncomeLoss" order="8" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_VestingOfRestrictedStockUnitsShares" xlink:label="loc_cxdoVestingOfRestrictedStockUnitsShares" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoVestingOfRestrictedStockUnitsShares" order="9" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_VestingOfRestrictedStockUnitsAmount" xlink:label="loc_cxdoVestingOfRestrictedStockUnitsAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoVestingOfRestrictedStockUnitsAmount" order="10" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited" xlink:title="170000 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPolicies" xlink:title="290000 - Disclosure - Significant Accounting Policies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/Revenue" xlink:title="290001 - Disclosure - Revenue" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/EarningsPerCommonShare" xlink:title="290002 - Disclosure - Earnings Per Common Share" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLosses" xlink:title="290003 - Disclosure - Trade Receivables and Allowance for Credit Losses" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLosses" xlink:title="290004 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/PrepaidExpenses" xlink:title="290005 - Disclosure - Prepaid Expenses" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/PropertyAndEquipment" xlink:title="290006 - Disclosure - Property and Equipment" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwill" xlink:title="370000 - Disclosure - Intangible Assets and Goodwill" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpenses" xlink:title="400000 - Disclosure - Accrued Expenses" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayable" xlink:title="460000 - Disclosure - Notes Payable" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/LineOfCredit" xlink:title="460001 - Disclosure - Line of Credit" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/FairValueMeasurements" xlink:title="815000 - Disclosure - Fair Value Measurements" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/IncomeTaxes" xlink:title="815001 - Disclosure - Income Taxes" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/Leases" xlink:title="842000 - Disclosure - Leases" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/CommitmentsAndContingencies" xlink:title="842001 - Disclosure - Commitments and Contingencies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/SegmentReporting" xlink:title="842002 - Disclosure - Segment Reporting" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesPolicies" xlink:title="842003 - Disclosure - Significant Accounting Policies (Policies)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesTables" xlink:title="842004 - Disclosure - Significant Accounting Policies (Tables)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueTables" xlink:title="842005 - Disclosure - Revenue (Tables)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/EarningsPerCommonShareTables" xlink:title="842006 - Disclosure - Earnings Per Common Share (Tables)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables" xlink:title="842007 - Disclosure - Trade Receivables and Allowance for Credit Losses (Tables)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables" xlink:title="842008 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Tables)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/PrepaidExpensesTables" xlink:title="842009 - Disclosure - Prepaid Expenses (Tables)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/PropertyAndEquipmentTables" xlink:title="842010 - Disclosure - Property and Equipment (Tables)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillTables" xlink:title="842011 - Disclosure - Intangible Assets and Goodwill (Tables)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpensesTables" xlink:title="842012 - Disclosure - Accrued Expenses (Tables)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayableTables" xlink:title="842013 - Disclosure - Notes Payable (Tables)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/FairValueMeasurementsTables" xlink:title="842014 - Disclosure - Fair Value Measurements (Tables)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesTables" xlink:title="842015 - Disclosure - Leases (Tables)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/SegmentsTables" xlink:title="842016 - Disclosure - Segments (Tables)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesDetails" xlink:title="842017 - Disclosure - Significant Accounting Policies (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="loc_us-gaapFurnitureAndFixturesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapFurnitureAndFixturesMember" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OfficeEquipmentMember" xlink:label="loc_us-gaapOfficeEquipmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapOfficeEquipmentMember" order="22" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ComputerSoftwareIntangibleAssetsMember" xlink:label="loc_cxdoComputerSoftwareIntangibleAssetsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_cxdoComputerSoftwareIntangibleAssetsMember" order="23" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InternalUseComputerSoftwareMember" xlink:label="loc_cxdoInternalUseComputerSoftwareMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_cxdoInternalUseComputerSoftwareMember" order="24" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLeaseholdImprovementsMember" order="25" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VehiclesMember" xlink:label="loc_us-gaapVehiclesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapVehiclesMember" order="26" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives" xlink:label="loc_cxdoPropertyPlantsAndEquipmentEstimatedUsefulLives" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoPropertyPlantsAndEquipmentEstimatedUsefulLives" order="1" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesDetails1" xlink:title="842018 - Disclosure - Significant Accounting Policies (Details 1)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" order="30" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaapPlanNameAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapPlanNameAxis" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapPlanNameAxis" xlink:to="loc_us-gaapPlanNameDomain" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapPlanNameAxis" xlink:to="loc_us-gaapPlanNameDomain_10" order="50" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" order="50" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" order="60" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_10" order="70" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CustomerRelationshipMember" xlink:label="loc_cxdoCustomerRelationshipMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_cxdoCustomerRelationshipMember" order="51" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BottomMember" xlink:label="loc_cxdoBottomMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPlanNameDomain" xlink:to="loc_cxdoBottomMember" order="52" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TopMember" xlink:label="loc_cxdoTopMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPlanNameDomain" xlink:to="loc_cxdoTopMember" order="53" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DevelopedTechnologiesMember" xlink:label="loc_cxdoDevelopedTechnologiesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_cxdoDevelopedTechnologiesMember" order="54" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TrademarkTradeNamesMember" xlink:label="loc_cxdoTrademarkTradeNamesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_cxdoTrademarkTradeNamesMember" order="55" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife" xlink:label="loc_cxdoFiniteLivedIntangibleAssetEstimatedUsefulLife" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoFiniteLivedIntangibleAssetEstimatedUsefulLife" order="1" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative" xlink:title="842019 - Disclosure - Significant Accounting Policies (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicDistributionAxis" xlink:label="loc_us-gaapGeographicDistributionAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapGeographicDistributionAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicDistributionDomain" xlink:label="loc_us-gaapGeographicDistributionDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapGeographicDistributionAxis" xlink:to="loc_us-gaapGeographicDistributionDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicDistributionDomain" xlink:label="loc_us-gaapGeographicDistributionDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapGeographicDistributionAxis" xlink:to="loc_us-gaapGeographicDistributionDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OtherCountriesMember" xlink:label="loc_cxdoOtherCountriesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapGeographicDistributionDomain" xlink:to="loc_cxdoOtherCountriesMember" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:label="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapForeignCurrencyTransactionGainLossBeforeTax" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherSellingAndMarketingExpense" xlink:label="loc_us-gaapOtherSellingAndMarketingExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOtherSellingAndMarketingExpense" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashEquivalentsAtCarryingValue" xlink:label="loc_us-gaapCashEquivalentsAtCarryingValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapCashEquivalentsAtCarryingValue" order="3" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CapitalizedContractCost" xlink:label="loc_cxdoCapitalizedContractCost" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoCapitalizedContractCost" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:label="loc_us-gaapIncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapIncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RevenueConcentrationRiskPercentage" xlink:label="loc_cxdoRevenueConcentrationRiskPercentage" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoRevenueConcentrationRiskPercentage" order="6" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AccountsReceivableConcentrationRiskPercentage" xlink:label="loc_cxdoAccountsReceivableConcentrationRiskPercentage" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoAccountsReceivableConcentrationRiskPercentage" order="7" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails" xlink:title="842020 - Disclosure - Revenue (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaapStatementBusinessSegmentsAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementBusinessSegmentsAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis" xlink:to="loc_us-gaapSegmentDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis" xlink:to="loc_us-gaapSegmentDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CloudTelecommunicationsSegmentMember" xlink:label="loc_cxdoCloudTelecommunicationsSegmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSegmentDomain" xlink:to="loc_cxdoCloudTelecommunicationsSegmentMember" order="21" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionsSegmentMember" xlink:label="loc_cxdoSoftwareSolutionsSegmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSegmentDomain" xlink:to="loc_cxdoSoftwareSolutionsSegmentMember" order="22" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ReportableSegmentMember" xlink:label="loc_cxdoReportableSegmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSegmentDomain" xlink:to="loc_cxdoReportableSegmentMember" order="23" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DesktopServices" xlink:label="loc_cxdoDesktopServices" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoDesktopServices" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InterestReceivedOnEquipmentFinancing" xlink:label="loc_cxdoInterestReceivedOnEquipmentFinancing" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoInterestReceivedOnEquipmentFinancing" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TelecommunicationsServices" xlink:label="loc_cxdoTelecommunicationsServices" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoTelecommunicationsServices" order="3" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FeesCommissionsAndOtherRecognizedOverTime" xlink:label="loc_cxdoFeesCommissionsAndOtherRecognizedOverTime" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoFeesCommissionsAndOtherRecognizedOverTime" order="4" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OneTimeFeesCommissionsAndOther" xlink:label="loc_cxdoOneTimeFeesCommissionsAndOther" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoOneTimeFeesCommissionsAndOther" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareLicenses" xlink:label="loc_cxdoSoftwareLicenses" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoSoftwareLicenses" order="6" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SubscriptionMaintenanceAndSupport" xlink:label="loc_cxdoSubscriptionMaintenanceAndSupport" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoSubscriptionMaintenanceAndSupport" order="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfessionalFees" xlink:label="loc_us-gaapProfessionalFees" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapProfessionalFees" order="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapRevenueFromContractWithCustomerIncludingAssessedTax" order="9" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime" xlink:label="loc_cxdoProductsServicesAndFeesRecognizedAtAPointInTime" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoProductsServicesAndFeesRecognizedAtAPointInTime" order="10" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ProductsServicesAndFeesTransferredOverTime" xlink:label="loc_cxdoProductsServicesAndFeesTransferredOverTime" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoProductsServicesAndFeesTransferredOverTime" order="11" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RevenueRecognition" xlink:label="loc_cxdoRevenueRecognition" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoRevenueRecognition" order="12" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails1" xlink:title="842021 - Disclosure - Revenue (Details 1)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails2" xlink:title="842022 - Disclosure - Revenue (Details 2)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_10" order="30" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContractAssetsMember" xlink:label="loc_cxdoContractAssetsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_cxdoContractAssetsMember" order="11" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ContractLiabilitiesMember" xlink:label="loc_cxdoContractLiabilitiesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_cxdoContractLiabilitiesMember" order="12" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RevenueRecognizedThatWasIncludedInContractLiabilityBalance" xlink:label="loc_cxdoRevenueRecognizedThatWasIncludedInContractLiabilityBalance" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoRevenueRecognizedThatWasIncludedInContractLiabilityBalance" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue" xlink:label="loc_cxdoIncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoIncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TransferredToReceivablesFromContractAssetsRecognized" xlink:label="loc_cxdoTransferredToReceivablesFromContractAssetsRecognized" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoTransferredToReceivablesFromContractAssetsRecognized" order="3" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncreaseDueToAdditionalUnamortizedDiscounts" xlink:label="loc_cxdoIncreaseDueToAdditionalUnamortizedDiscounts" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoIncreaseDueToAdditionalUnamortizedDiscounts" order="4" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails3" xlink:title="842023 - Disclosure - Revenue (Details 3)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails4" xlink:title="842024 - Disclosure - Revenue (Details 4)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetails5" xlink:title="842025 - Disclosure - Revenue (Details 5)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsegmentsAxis" xlink:label="loc_us-gaapSubsegmentsAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapSubsegmentsAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsegmentsDomain" xlink:label="loc_us-gaapSubsegmentsDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapSubsegmentsAxis" xlink:to="loc_us-gaapSubsegmentsDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SubsegmentsDomain" xlink:label="loc_us-gaapSubsegmentsDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapSubsegmentsAxis" xlink:to="loc_us-gaapSubsegmentsDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaapStatementBusinessSegmentsAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementBusinessSegmentsAxis" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis" xlink:to="loc_us-gaapSegmentDomain" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis" xlink:to="loc_us-gaapSegmentDomain_10" order="50" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TelecommunicationsServicesMember" xlink:label="loc_cxdoTelecommunicationsServicesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSubsegmentsDomain" xlink:to="loc_cxdoTelecommunicationsServicesMember" order="31" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DesktopDevicesMember" xlink:label="loc_cxdoDesktopDevicesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSubsegmentsDomain" xlink:to="loc_cxdoDesktopDevicesMember" order="32" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionsMember" xlink:label="loc_cxdoSoftwareSolutionsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSegmentDomain" xlink:to="loc_cxdoSoftwareSolutionsMember" order="33" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInSecondYear" xlink:label="loc_us-gaapPurchaseObligationDueInSecondYear" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapPurchaseObligationDueInSecondYear" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInThirdYear" xlink:label="loc_us-gaapPurchaseObligationDueInThirdYear" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapPurchaseObligationDueInThirdYear" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInFourthYear" xlink:label="loc_us-gaapPurchaseObligationDueInFourthYear" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapPurchaseObligationDueInFourthYear" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueInFifthYear" xlink:label="loc_us-gaapPurchaseObligationDueInFifthYear" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapPurchaseObligationDueInFifthYear" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligationDueAfterFifthYear" xlink:label="loc_us-gaapPurchaseObligationDueAfterFifthYear" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapPurchaseObligationDueAfterFifthYear" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligation" xlink:label="loc_us-gaapPurchaseObligation" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapPurchaseObligation" order="6" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/RevenueDetailsNarrative" xlink:title="842026 - Disclosure - Revenue (Details Narrative)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/EarningsPerCommonShareDetails" xlink:title="842027 - Disclosure - Earnings Per Common Share (Details)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/EarningsPerCommonShareDetails1" xlink:title="842028 - Disclosure - Earnings Per Common Share (Details 1)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialInstrumentAxis" xlink:label="loc_us-gaapFinancialInstrumentAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapFinancialInstrumentAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFinancialInstrumentAxis" xlink:to="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:label="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapFinancialInstrumentAxis" xlink:to="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockOptionMember" xlink:label="loc_us-gaapStockOptionMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapTransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="loc_us-gaapStockOptionMember" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" order="1" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails" xlink:title="842029 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails1" xlink:title="842030 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details 1)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:title="842031 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details Narrative)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails" xlink:title="842032 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1" xlink:title="842033 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 1)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2" xlink:title="842034 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 2)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditLossStatusAxis" xlink:label="loc_us-gaapCreditLossStatusAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapCreditLossStatusAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditLossStatusDomain" xlink:label="loc_us-gaapCreditLossStatusDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapCreditLossStatusAxis" xlink:to="loc_us-gaapCreditLossStatusDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditLossStatusDomain" xlink:label="loc_us-gaapCreditLossStatusDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapCreditLossStatusAxis" xlink:to="loc_us-gaapCreditLossStatusDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceForCreditLossesMember" xlink:label="loc_cxdoAllowanceForCreditLossesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapCreditLossStatusDomain" xlink:to="loc_cxdoAllowanceForCreditLossesMember" order="21" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllowanceforcreditlossesofContractAssets" xlink:label="loc_cxdoAllowanceforcreditlossesofContractAssets" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoAllowanceforcreditlossesofContractAssets" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProvisionForOtherCreditLosses" xlink:label="loc_us-gaapProvisionForOtherCreditLosses" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapProvisionForOtherCreditLosses" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs" xlink:label="loc_us-gaapFinancingReceivableAllowanceForCreditLossesWriteOffs" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapFinancingReceivableAllowanceForCreditLossesWriteOffs" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery" xlink:label="loc_us-gaapFinancingReceivableAllowanceForCreditLossesRecovery" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapFinancingReceivableAllowanceForCreditLossesRecovery" order="4" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3" xlink:title="842035 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 3)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablesPeriodPastDueAxis" xlink:label="loc_us-gaapFinancingReceivablesPeriodPastDueAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapFinancingReceivablesPeriodPastDueAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablesPeriodPastDueDomain" xlink:label="loc_us-gaapFinancingReceivablesPeriodPastDueDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFinancingReceivablesPeriodPastDueAxis" xlink:to="loc_us-gaapFinancingReceivablesPeriodPastDueDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablesPeriodPastDueDomain" xlink:label="loc_us-gaapFinancingReceivablesPeriodPastDueDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapFinancingReceivablesPeriodPastDueAxis" xlink:to="loc_us-gaapFinancingReceivablesPeriodPastDueDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivables60To89DaysPastDueMember" xlink:label="loc_us-gaapFinancingReceivables60To89DaysPastDueMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFinancingReceivablesPeriodPastDueDomain" xlink:to="loc_us-gaapFinancingReceivables60To89DaysPastDueMember" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember" xlink:label="loc_us-gaapFinancingReceivablesEqualToGreaterThan90DaysPastDueMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFinancingReceivablesPeriodPastDueDomain" xlink:to="loc_us-gaapFinancingReceivablesEqualToGreaterThan90DaysPastDueMember" order="22" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AgingOfReceivablesAmountDues" xlink:label="loc_cxdoAgingOfReceivablesAmountDues" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoAgingOfReceivablesAmountDues" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AgingOfReceivablesDues" xlink:label="loc_cxdoAgingOfReceivablesDues" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoAgingOfReceivablesDues" order="2" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4" xlink:title="842036 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 4)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_srtStatementGeographicalAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateAxis" xlink:label="loc_us-gaapAwardDateAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapAwardDateAxis" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateDomain" xlink:label="loc_us-gaapAwardDateDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapAwardDateAxis" xlink:to="loc_us-gaapAwardDateDomain" order="50" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateDomain" xlink:label="loc_us-gaapAwardDateDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapAwardDateAxis" xlink:to="loc_us-gaapAwardDateDomain_10" order="60" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_UnitedStateMember" xlink:label="loc_cxdoUnitedStateMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_cxdoUnitedStateMember" order="41" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyTwoMember" xlink:label="loc_cxdoTwoThousendTwentyTwoMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAwardDateDomain" xlink:to="loc_cxdoTwoThousendTwentyTwoMember" order="42" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyOneMember" xlink:label="loc_cxdoTwoThousendTwentyOneMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAwardDateDomain" xlink:to="loc_cxdoTwoThousendTwentyOneMember" order="43" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyFiveMember" xlink:label="loc_cxdoTwoThousendTwentyFiveMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAwardDateDomain" xlink:to="loc_cxdoTwoThousendTwentyFiveMember" order="44" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyFourMember" xlink:label="loc_cxdoTwoThousendTwentyFourMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAwardDateDomain" xlink:to="loc_cxdoTwoThousendTwentyFourMember" order="45" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PriorMember" xlink:label="loc_cxdoPriorMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAwardDateDomain" xlink:to="loc_cxdoPriorMember" order="46" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TwoThousendTwentyThreeMember" xlink:label="loc_cxdoTwoThousendTwentyThreeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAwardDateDomain" xlink:to="loc_cxdoTwoThousendTwentyThreeMember" order="47" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TotalEquipmentFinancingReceivablesDue" xlink:label="loc_cxdoTotalEquipmentFinancingReceivablesDue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoTotalEquipmentFinancingReceivablesDue" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs" xlink:label="loc_cxdoTotalEquipmentFinancingReceivablesDueGrossWriteOffs" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoTotalEquipmentFinancingReceivablesDueGrossWriteOffs" order="2" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative" xlink:title="842037 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details Narrative)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/PrepaidExpensesDetails" xlink:title="842038 - Disclosure - Prepaid Expenses (Details)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/PropertyAndEquipmentDetails" xlink:title="842039 - Disclosure - Property and Equipment (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" order="30" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OfficeEquipmentMember" xlink:label="loc_us-gaapOfficeEquipmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapOfficeEquipmentMember" order="11" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ComputerSoftwareIntangibleAssetsMember" xlink:label="loc_cxdoComputerSoftwareIntangibleAssetsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_cxdoComputerSoftwareIntangibleAssetsMember" order="12" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InternalUseComputerSoftwareMember" xlink:label="loc_cxdoInternalUseComputerSoftwareMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_cxdoInternalUseComputerSoftwareMember" order="13" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeaseholdImprovementsMember" xlink:label="loc_us-gaapLeaseholdImprovementsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapLeaseholdImprovementsMember" order="14" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VehiclesMember" xlink:label="loc_us-gaapVehiclesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapVehiclesMember" order="15" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="loc_us-gaapPropertyPlantAndEquipmentNet" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentNet" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="loc_us-gaapPropertyPlantAndEquipmentGross" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentGross" order="3" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/PropertyAndEquipmentDetailsNarrative" xlink:title="842040 - Disclosure - Property and Equipment (Details Narrative)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails" xlink:title="842041 - Disclosure - Intangible Assets and Goodwill (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain_10" order="30" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CustomerRelationshipsMember" xlink:label="loc_us-gaapCustomerRelationshipsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_us-gaapCustomerRelationshipsMember" order="11" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DevelopedTechnologiesMember" xlink:label="loc_cxdoDevelopedTechnologiesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_cxdoDevelopedTechnologiesMember" order="12" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TrademarkAndTradeNamesMember" xlink:label="loc_cxdoTrademarkAndTradeNamesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_cxdoTrademarkAndTradeNamesMember" order="13" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TotalacquiredintangibleassetsMember" xlink:label="loc_cxdoTotalacquiredintangibleassetsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapFiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="loc_cxdoTotalacquiredintangibleassetsMember" order="14" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsGross" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsGross" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsGross" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsAccumulatedAmortization" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNet" xlink:label="loc_us-gaapFiniteLivedIntangibleAssetsNet" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapFiniteLivedIntangibleAssetsNet" order="3" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1" xlink:title="842042 - Disclosure - Intangible Assets and Goodwill (Details 1)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails2" xlink:title="842043 - Disclosure - Intangible Assets and Goodwill (Details 2)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative" xlink:title="842044 - Disclosure - Intangible Assets and Goodwill (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationAxis" xlink:label="loc_us-gaapIncomeStatementLocationAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapIncomeStatementLocationAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaapIncomeStatementLocationDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapIncomeStatementLocationAxis" xlink:to="loc_us-gaapIncomeStatementLocationDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementLocationDomain" xlink:label="loc_us-gaapIncomeStatementLocationDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapIncomeStatementLocationAxis" xlink:to="loc_us-gaapIncomeStatementLocationDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingAndMarketingExpenseMember" xlink:label="loc_us-gaapSellingAndMarketingExpenseMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeStatementLocationDomain" xlink:to="loc_us-gaapSellingAndMarketingExpenseMember" order="21" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeneralAndAdministrativeExpenseMember" xlink:label="loc_us-gaapGeneralAndAdministrativeExpenseMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeStatementLocationDomain" xlink:to="loc_us-gaapGeneralAndAdministrativeExpenseMember" order="22" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionsRevenueMember" xlink:label="loc_cxdoSoftwareSolutionsRevenueMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeStatementLocationDomain" xlink:to="loc_cxdoSoftwareSolutionsRevenueMember" order="23" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AmortizationOfIntangibleAssetsDevelopedTechnology" xlink:label="loc_cxdoAmortizationOfIntangibleAssetsDevelopedTechnology" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoAmortizationOfIntangibleAssetsDevelopedTechnology" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AmortizationOfIntangibleAssetsCustomerRelationships" xlink:label="loc_cxdoAmortizationOfIntangibleAssetsCustomerRelationships" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoAmortizationOfIntangibleAssetsCustomerRelationships" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DevelopedTechnologies" xlink:label="loc_cxdoDevelopedTechnologies" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoDevelopedTechnologies" order="3" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TrademarksAndTradeNames" xlink:label="loc_cxdoTrademarksAndTradeNames" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoTrademarksAndTradeNames" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="loc_us-gaapAcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AmortizationOfIntangibleAssetsTrademarksAndTradeNames" xlink:label="loc_cxdoAmortizationOfIntangibleAssetsTrademarksAndTradeNames" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoAmortizationOfIntangibleAssetsTrademarksAndTradeNames" order="6" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpensesDetails" xlink:title="842045 - Disclosure - Accrued Expenses (Details)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpensesDetails1" xlink:title="842046 - Disclosure - Accrued Expenses (Details 1)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/AccruedExpensesDetailsNarrative" xlink:title="842047 - Disclosure - Accrued Expenses (Details Narrative)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayableDetails" xlink:title="842048 - Disclosure - Notes Payable (Details)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayableDetails1" xlink:title="842049 - Disclosure - Notes Payable (Details 1)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/NotesPayableDetailsNarrative" xlink:title="842050 - Disclosure - Notes Payable (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAxis" xlink:label="loc_us-gaapBusinessAcquisitionAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapBusinessAcquisitionAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaapBusinessAcquisitionAcquireeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapBusinessAcquisitionAxis" xlink:to="loc_us-gaapBusinessAcquisitionAcquireeDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessAcquisitionAcquireeDomain" xlink:label="loc_us-gaapBusinessAcquisitionAcquireeDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapBusinessAcquisitionAxis" xlink:to="loc_us-gaapBusinessAcquisitionAcquireeDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateAxis" xlink:label="loc_us-gaapAwardDateAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapAwardDateAxis" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateDomain" xlink:label="loc_us-gaapAwardDateDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapAwardDateAxis" xlink:to="loc_us-gaapAwardDateDomain" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateDomain" xlink:label="loc_us-gaapAwardDateDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapAwardDateAxis" xlink:to="loc_us-gaapAwardDateDomain_10" order="50" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AllegiantNetworksBusinessAcquisitionMember" xlink:label="loc_cxdoAllegiantNetworksBusinessAcquisitionMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapBusinessAcquisitionAcquireeDomain" xlink:to="loc_cxdoAllegiantNetworksBusinessAcquisitionMember" order="31" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_NovemberOneTwoThousandTwentyTwoMember" xlink:label="loc_cxdoNovemberOneTwoThousandTwentyTwoMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAwardDateDomain" xlink:to="loc_cxdoNovemberOneTwoThousandTwentyTwoMember" order="32" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember" xlink:label="loc_cxdoOnFebruaryTwentySevenTwoThousandTwentyThreeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAwardDateDomain" xlink:to="loc_cxdoOnFebruaryTwentySevenTwoThousandTwentyThreeMember" order="33" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_NotesPayableRelatedPartyClassifiedCurrent" xlink:label="loc_cxdoNotesPayableRelatedPartyClassifiedCurrent" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoNotesPayableRelatedPartyClassifiedCurrent" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AgreementTerm" xlink:label="loc_cxdoAgreementTerm" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoAgreementTerm" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_PromissoryNote" xlink:label="loc_cxdoPromissoryNote" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoPromissoryNote" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentInterestRateDuringPeriod" xlink:label="loc_us-gaapDebtInstrumentInterestRateDuringPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtInstrumentInterestRateDuringPeriod" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForRestructuring" xlink:label="loc_us-gaapPaymentsForRestructuring" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapPaymentsForRestructuring" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentPeriodicPaymentPrincipal" xlink:label="loc_us-gaapDebtInstrumentPeriodicPaymentPrincipal" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapDebtInstrumentPeriodicPaymentPrincipal" order="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPaid" xlink:label="loc_us-gaapInterestPaid" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapInterestPaid" order="7" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/LineOfCreditDetailsNarrative" xlink:title="842051 - Disclosure - Line of Credit (Details Narrative)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/FairValueMeasurementsDetails" xlink:title="842052 - Disclosure - Fair Value Measurements (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaapPlanNameAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapPlanNameAxis" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapPlanNameAxis" xlink:to="loc_us-gaapPlanNameDomain" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapPlanNameAxis" xlink:to="loc_us-gaapPlanNameDomain_10" order="30" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CarryingReportedAmountsFairValueDisclosureMember" xlink:label="loc_cxdoCarryingReportedAmountsFairValueDisclosureMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPlanNameDomain" xlink:to="loc_cxdoCarryingReportedAmountsFairValueDisclosureMember" order="11" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EstimateOfFairValueFairValueDisclosuresMember" xlink:label="loc_cxdoEstimateOfFairValueFairValueDisclosuresMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPlanNameDomain" xlink:to="loc_cxdoEstimateOfFairValueFairValueDisclosuresMember" order="12" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableFairValueDisclosure" xlink:label="loc_us-gaapAccountsReceivableFairValueDisclosure" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAccountsReceivableFairValueDisclosure" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_EquipmentFinancingReceivableFairValueDisclosure" xlink:label="loc_cxdoEquipmentFinancingReceivableFairValueDisclosure" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoEquipmentFinancingReceivableFairValueDisclosure" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_FinanceLeasesFairValueDisclosure" xlink:label="loc_cxdoFinanceLeasesFairValueDisclosure" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoFinanceLeasesFairValueDisclosure" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NotesPayableFairValueDisclosure" xlink:label="loc_us-gaapNotesPayableFairValueDisclosure" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapNotesPayableFairValueDisclosure" order="4" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/IncomeTaxesDetailsNarrative" xlink:title="842053 - Disclosure - Income Taxes (Details Narrative)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesDetails" xlink:title="842054 - Disclosure - Leases (Details)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesDetails1" xlink:title="842055 - Disclosure - Leases (Details 1)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesDetails2" xlink:title="842056 - Disclosure - Leases (Details 2)" />
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/LeasesDetailsNarrative" xlink:title="842057 - Disclosure - Leases (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RestatementAxis" xlink:label="loc_srtRestatementAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_srtRestatementAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RestatementDomain" xlink:label="loc_srtRestatementDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtRestatementAxis" xlink:to="loc_srtRestatementDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RestatementDomain" xlink:label="loc_srtRestatementDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srtRestatementAxis" xlink:to="loc_srtRestatementDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicDistributionAxis" xlink:label="loc_us-gaapGeographicDistributionAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapGeographicDistributionAxis" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicDistributionDomain" xlink:label="loc_us-gaapGeographicDistributionDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapGeographicDistributionAxis" xlink:to="loc_us-gaapGeographicDistributionDomain" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicDistributionDomain" xlink:label="loc_us-gaapGeographicDistributionDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapGeographicDistributionAxis" xlink:to="loc_us-gaapGeographicDistributionDomain_10" order="50" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateAxis" xlink:label="loc_us-gaapAwardDateAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapAwardDateAxis" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateDomain" xlink:label="loc_us-gaapAwardDateDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapAwardDateAxis" xlink:to="loc_us-gaapAwardDateDomain" order="50" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateDomain" xlink:label="loc_us-gaapAwardDateDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapAwardDateAxis" xlink:to="loc_us-gaapAwardDateDomain_10" order="60" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaapPlanNameAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapPlanNameAxis" order="50" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapPlanNameAxis" xlink:to="loc_us-gaapPlanNameDomain" order="60" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapPlanNameAxis" xlink:to="loc_us-gaapPlanNameDomain_10" order="70" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ScenarioPreviouslyReportedMember" xlink:label="loc_srtScenarioPreviouslyReportedMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtRestatementDomain" xlink:to="loc_srtScenarioPreviouslyReportedMember" order="51" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_TempeArizoneMember" xlink:label="loc_cxdoTempeArizoneMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapGeographicDistributionDomain" xlink:to="loc_cxdoTempeArizoneMember" order="52" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_RestonVirginiaMember" xlink:label="loc_cxdoRestonVirginiaMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapGeographicDistributionDomain" xlink:to="loc_cxdoRestonVirginiaMember" order="53" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SanDiegoCaliforniaMember" xlink:label="loc_cxdoSanDiegoCaliforniaMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapGeographicDistributionDomain" xlink:to="loc_cxdoSanDiegoCaliforniaMember" order="54" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OverlandParkKansasMember" xlink:label="loc_cxdoOverlandParkKansasMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapGeographicDistributionDomain" xlink:to="loc_cxdoOverlandParkKansasMember" order="55" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_MichiganLasVegasMember" xlink:label="loc_cxdoMichiganLasVegasMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapGeographicDistributionDomain" xlink:to="loc_cxdoMichiganLasVegasMember" order="56" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OtherOperatingLeasesMember" xlink:label="loc_cxdoOtherOperatingLeasesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapGeographicDistributionDomain" xlink:to="loc_cxdoOtherOperatingLeasesMember" order="57" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OctoberTwoThousandTwentyFourMember" xlink:label="loc_cxdoOctoberTwoThousandTwentyFourMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAwardDateDomain" xlink:to="loc_cxdoOctoberTwoThousandTwentyFourMember" order="58" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BottomMember" xlink:label="loc_cxdoBottomMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPlanNameDomain" xlink:to="loc_cxdoBottomMember" order="59" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeaseLiability" xlink:label="loc_us-gaapFinanceLeaseLiability" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapFinanceLeaseLiability" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" xlink:label="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapBusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentOwnedAccumulatedDepreciation" xlink:label="loc_us-gaapPropertyPlantAndEquipmentOwnedAccumulatedDepreciation" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapPropertyPlantAndEquipmentOwnedAccumulatedDepreciation" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherExpenses" xlink:label="loc_us-gaapOtherExpenses" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOtherExpenses" order="4" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses" xlink:label="loc_cxdoAmortizationExpenseIncludedInGeneralAndAdministrativeExpenses" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoAmortizationExpenseIncludedInGeneralAndAdministrativeExpenses" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InterestRateFinanceLeases" xlink:label="loc_cxdoInterestRateFinanceLeases" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoInterestRateFinanceLeases" order="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestExpenseDebt" xlink:label="loc_us-gaapInterestExpenseDebt" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapInterestExpenseDebt" order="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseExpense" xlink:label="loc_us-gaapOperatingLeaseExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOperatingLeaseExpense" order="8" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DescriptionOfleaseExpiryDate" xlink:label="loc_cxdoDescriptionOfleaseExpiryDate" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoDescriptionOfleaseExpiryDate" order="9" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_IncrementalBorrowingRate" xlink:label="loc_cxdoIncrementalBorrowingRate" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoIncrementalBorrowingRate" order="10" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InterestExpenseOnMonthlyRentDepositLiabilitiesDescription" xlink:label="loc_cxdoInterestExpenseOnMonthlyRentDepositLiabilitiesDescription" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoInterestExpenseOnMonthlyRentDepositLiabilitiesDescription" order="11" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OperatingCostsAndExpencesDescription" xlink:label="loc_cxdoOperatingCostsAndExpencesDescription" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoOperatingCostsAndExpencesDescription" order="12" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostsAndExpenses" xlink:label="loc_us-gaapCostsAndExpenses" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapCostsAndExpenses" order="13" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative" xlink:title="842058 - Disclosure - Commitments and Contingencies (Details Narrative)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyTransactionsByRelatedPartyAxis" xlink:label="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RelatedPartyDomain" xlink:label="loc_us-gaapRelatedPartyDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapRelatedPartyTransactionsByRelatedPartyAxis" xlink:to="loc_us-gaapRelatedPartyDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateAxis" xlink:label="loc_us-gaapAwardDateAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapAwardDateAxis" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateDomain" xlink:label="loc_us-gaapAwardDateDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapAwardDateAxis" xlink:to="loc_us-gaapAwardDateDomain" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardDateDomain" xlink:label="loc_us-gaapAwardDateDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapAwardDateAxis" xlink:to="loc_us-gaapAwardDateDomain_10" order="50" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="loc_us-gaapPlanNameAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapPlanNameAxis" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapPlanNameAxis" xlink:to="loc_us-gaapPlanNameDomain" order="50" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="loc_us-gaapPlanNameDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapPlanNameAxis" xlink:to="loc_us-gaapPlanNameDomain_10" order="60" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_OracleMemberMember" xlink:label="loc_cxdoOracleMemberMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_cxdoOracleMemberMember" order="41" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DecemberThirtyOneTwoThousandTwentyFourMember" xlink:label="loc_cxdoDecemberThirtyOneTwoThousandTwentyFourMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapAwardDateDomain" xlink:to="loc_cxdoDecemberThirtyOneTwoThousandTwentyFourMember" order="42" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BonusPlanMember" xlink:label="loc_cxdoBonusPlanMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPlanNameDomain" xlink:to="loc_cxdoBonusPlanMember" order="43" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BoardOfDirectorsMember" xlink:label="loc_cxdoBoardOfDirectorsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapRelatedPartyDomain" xlink:to="loc_cxdoBoardOfDirectorsMember" order="44" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PurchaseObligation" xlink:label="loc_us-gaapPurchaseObligation" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapPurchaseObligation" order="1" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BonusDescription" xlink:label="loc_cxdoBonusDescription" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoBonusDescription" order="2" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_BonusAwardDescription" xlink:label="loc_cxdoBonusAwardDescription" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoBonusAwardDescription" order="3" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_ServiceContractAmount" xlink:label="loc_cxdoServiceContractAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoServiceContractAmount" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccretionExpense" xlink:label="loc_us-gaapAccretionExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapAccretionExpense" order="5" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_DescriptionRelatedToNoncancellableServiceContractFutureAmount" xlink:label="loc_cxdoDescriptionRelatedToNoncancellableServiceContractFutureAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_cxdoDescriptionRelatedToNoncancellableServiceContractFutureAmount" order="6" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/SegmentReportingDetails" xlink:title="842059 - Disclosure - Segment Reporting (Details)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="loc_srtProductOrServiceAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_srtProductOrServiceAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="loc_srtProductsAndServicesDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srtProductOrServiceAxis" xlink:to="loc_srtProductsAndServicesDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementBusinessSegmentsAxis" xlink:label="loc_us-gaapStatementBusinessSegmentsAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapStatementBusinessSegmentsAxis" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis" xlink:to="loc_us-gaapSegmentDomain" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentDomain" xlink:label="loc_us-gaapSegmentDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapStatementBusinessSegmentsAxis" xlink:to="loc_us-gaapSegmentDomain_10" order="50" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" order="50" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapPropertyPlantAndEquipmentByTypeAxis" xlink:to="loc_us-gaapPropertyPlantAndEquipmentTypeDomain_10" order="60" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ServiceMember" xlink:label="loc_us-gaapServiceMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_us-gaapServiceMember" order="41" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_CloudTelecommunicationsServiceSegmentMember" xlink:label="loc_cxdoCloudTelecommunicationsServiceSegmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSegmentDomain" xlink:to="loc_cxdoCloudTelecommunicationsServiceSegmentMember" order="42" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_SoftwareSolutionSegmentMember" xlink:label="loc_cxdoSoftwareSolutionSegmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapSegmentDomain" xlink:to="loc_cxdoSoftwareSolutionSegmentMember" order="43" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="loc_us-gaapSoftwareDevelopmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapPropertyPlantAndEquipmentTypeDomain" xlink:to="loc_us-gaapSoftwareDevelopmentMember" order="44" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductMember" xlink:label="loc_us-gaapProductMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtProductsAndServicesDomain" xlink:to="loc_us-gaapProductMember" order="45" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Revenues" xlink:label="loc_us-gaapRevenues" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapRevenues" order="1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpensesAbstract" xlink:label="loc_us-gaapOperatingExpensesAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOperatingExpensesAbstract" order="2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeBenefitsAndShareBasedCompensation" xlink:label="loc_us-gaapEmployeeBenefitsAndShareBasedCompensation" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapEmployeeBenefitsAndShareBasedCompensation" order="3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NoninterestExpenseCommissionExpense" xlink:label="loc_us-gaapNoninterestExpenseCommissionExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapNoninterestExpenseCommissionExpense" order="4" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfessionalAndContractServicesExpense" xlink:label="loc_us-gaapProfessionalAndContractServicesExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapProfessionalAndContractServicesExpense" order="5" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherDepreciationAndAmortization" xlink:label="loc_us-gaapOtherDepreciationAndAmortization" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOtherDepreciationAndAmortization" order="6" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingOtherItemAmount" xlink:label="loc_us-gaapSegmentReportingOtherItemAmount" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapSegmentReportingOtherItemAmount" order="7" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingExpenses" xlink:label="loc_us-gaapOperatingExpenses" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOperatingExpenses" order="8" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="loc_us-gaapOperatingIncomeLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOperatingIncomeLoss" order="9" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeOther" xlink:label="loc_us-gaapInterestIncomeOther" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapInterestIncomeOther" order="10" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeExpenseNet" xlink:label="loc_us-gaapInterestIncomeExpenseNet" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapInterestIncomeExpenseNet" order="11" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherOperatingIncomeExpenseNet" xlink:label="loc_us-gaapOtherOperatingIncomeExpenseNet" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapOtherOperatingIncomeExpenseNet" order="12" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapIncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="13" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="loc_us-gaapIncomeTaxExpenseBenefit" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapIncomeTaxExpenseBenefit" order="14" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="loc_us-gaapNetIncomeLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapNetIncomeLoss" order="15" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://cxdo.com/role/SegmentReportingDetails1" xlink:title="842060 - Disclosure - Segment Reporting (Details 1)">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="loc_us-gaapStatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="loc_us-gaapStatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapStatementTable" order="2000" xbrldt:contextElement="segment" xbrldt:closed="true" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="loc_us-gaapIncomeTaxAuthorityNameAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_us-gaapIncomeTaxAuthorityNameAxis" order="20" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="loc_us-gaapIncomeTaxAuthorityNameDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaapIncomeTaxAuthorityNameAxis" xlink:to="loc_us-gaapIncomeTaxAuthorityNameDomain_10" order="40" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="loc_srtStatementGeographicalAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaapStatementTable" xlink:to="loc_srtStatementGeographicalAxis" order="30" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain" order="40" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="loc_srtSegmentGeographicalDomain_10" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srtStatementGeographicalAxis" xlink:to="loc_srtSegmentGeographicalDomain_10" order="50" xbrldt:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="cxdo-20250331.xsd#cxdo_InternationalMember" xlink:label="loc_cxdoInternationalMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapIncomeTaxAuthorityNameDomain" xlink:to="loc_cxdoInternationalMember" order="31" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="loc_countryUS" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srtSegmentGeographicalDomain" xlink:to="loc_countryUS" order="32" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Revenues" xlink:label="loc_us-gaapRevenues" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaapStatementLineItems" xlink:to="loc_us-gaapRevenues" order="1" />
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>11
<FILENAME>cxdo_10qimg69.jpg
<TEXT>
begin 644 cxdo_10qimg69.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  4$! 0$ P4$! 0&!04&" T(" <'
M"! +# D-$Q 4$Q(0$A(4%QT9%!8<%A(2&B,:'!X?(2$A%!DD)R0@)AT@(2#_
MVP!# 04&!@@'" \(" \@%1(5(" @(" @(" @(" @(" @(" @(" @(" @(" @
M(" @(" @(" @(" @(" @(" @(" @("#_P  1"  V 2 # 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#[&^3;[52N
MKBVL;.2\NY$@@A4L\CG 4#O5C;M8'=7C?QFUJ[EET[PK9,<W3"655/+_ #;4
M7\P3]<5KAZ;J24=O\CAQ6(5*G*35[;+N^A'=?$SQ%XCU=],\$Z7O0'!N)4R<
M?WL'Y4'^]G^E;MC:?%JTVWEU?Z7?=VM9/E)'H&5  ?QQ5^QL]'^&_@1IY  8
M$#S.!\T\IXP/J>!Z#\:\ZM[KX@?$J_DDL;IM,TM&V_(YCC7VR.7./\C-=\8Q
MFFHI1BOM-:L\:4JD7'GDY2EJHIV2/:]'U+^U+$3R6TMG.K&.6WE'S1N.H]".
MX(X((-;?&*\<MOACXMTI?M6D^.'%V.=I5U1C[_,<_B#79>$];U2^>ZT?Q#;+
M;:S9!3)L^Y-&V=LB^QP0<=QVZ#BK4HQO*G)22^3/4P^)J-JG5@XM[/1I_-=3
MMJ*3-4KJZMK&RGOKR9(+:WC:661SA411DL3Z #-8'IEZBOS\^*G[47B_Q-K5
MS8>!]0F\/:#&Q2*6 ;;FY _C9^J ]0JXQW)KS8:]\:K.S'B'^UO&D-H!Y@OF
MFNA%CUWD[<4["N?J917PW\&_VI->L]=M/#WQ*O!J6DW#")-4=0LUJ2< R$<.
MGJ3\PZY.,5]5_$/XA>'_ (;^$9O$VOS$Q B.W@CP9+J4C*HGY$D]  32&=S1
M7YW>+OVK_BGX@O)?[%O+?PU8D_)#:1+)(!_M2."2?H%^E>H_ /XS:K!\/?'7
MB_XB^)+W5;;2&MC"L[AG+.) (XQZLVT?_6!H ^P**_-7QM^T1\4/&VLR)8ZU
M=:'8ROL@T[2G:,@$\ NN'=OQQGH!62^N?'CPA#'K5UJ'C32K<X(GNVN5B/IG
M?\I_&G85S]0**^2O@O\ 'K4OB;#<_#7QEJ+Z9KM[;O'I^M6.(9'<*3R!P)!C
M<",!L$8]?&]9^*GQM^%WQ2ETGQ%XJU"_GTBZ'F6US(6@O(^H./[KJ<@]1GU%
M(9^B;<DBL74O$6A:/(L>J:I;6;N,JLT@4D>N/2L'P_\ $#PWXB^&L/CRQNO^
M);)"9'4D;XG'#1$?WPWRX[\8X(KYYU;4-2\8>*9+G8TMU>3!(H4YV@\*H^@P
M*[L)A?;MRD[174\7,,=]5Y8P7-.73R/J?2O$&C:T\J:5J5O>-$ 7$+[MH/3/
MY&M@[57/2OE;XF?%"/X$^&;;P=X;C@N_%M]%]IN9Y!N2U!X#$?Q'@A5/&!D]
M<'YJ7QM\9_'VIR-8Z_XJUFZ'S-%ITDQ5,_[$6%4?@*Y:BBIM1=T>EAY3E3BZ
MBLWNET/U#HK\T=#^-7QJ^&FNI;ZEK&JN8B#)IFO+)('7TQ)\Z_52*^Y?AO\
M%/P]X^^&H\9P.+&.V5QJ4$C9^QNB[G!/=<?,#W!]<BLSH/2:*_/WXE?M4>-O
M$.JW-EX)NF\/:(K%8I(E!NIU_O,YSLSUPN,>IKQ]?B9\14O?MJ^//$ N,[M_
M]I39S_WU3L*Y^L5%?!_PG_:J\4:5KEEHWQ N%UC2)Y%B:_=0MQ:Y.-Y(P'4=
M\C.._&#]1?&#XK:9\*_ C:[-&M[?W+>3I]INP)I,9W$C^!1R2/8=2*0STZJE
M]G^S[G:2#Y38(ZC@U^8&O?&#XJ>,]:$T_BO5S-*_[JTT^9X8QG^%(XR/ZGWK
MZ/\ V8?%7Q U"]\5^'_&NIZM<0V=@D]O#J@<R1DE@2"XW8QVSB@#P#X8_$_Q
MYHWQ,\/R0^*M3N(I[^&WGM[F[DEBFC>0*RLK$CH>#U!Y%?IU7Y)>"?\ DH_A
MK_L*6W_HU:^[/V@OCP/A;:0:'H,4-UXGOHO-7S?FCM(LD"1A_$Q(.U>G!)[
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
M[*22/(4Y *@CCTK[PKG?$GBO0?">E7&H:YJ4%JD,$MP(FD42RK&I9O+0G+D
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
!V0$!

end
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover - shares<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Apr. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">Crexendo, Inc.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0001075736<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-Q<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Mar. 31,  2025<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2025<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">29,030,543<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-32277<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation State Country Code</a></td>
<td class="text">NV<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">87-0591719<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address Address Line 1</a></td>
<td class="text">1225 West Washington Street<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine2', window );">Entity Address Address Line 2</a></td>
<td class="text">Suite 213<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address City Or Town</a></td>
<td class="text">Tempe<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address State Or Province</a></td>
<td class="text">AZ<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address Postal Zip Code</a></td>
<td class="text">85288<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">602<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">714-8500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Security 12b Title</a></td>
<td class="text">Common Stock, par value $0.001 per share<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DocumentQuarterlyReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an quarterly report.</p></div>
<a href="javascript:void(0);" onclick="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-Q<br> -Number 240<br> -Section 308<br> -Subsection a<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_DocumentQuarterlyReport</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_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_EntityAddressAddressLine2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 2 such as Street or Suite number</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_EntityAddressAddressLine2</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="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="Show.toggleNext( this );">+ 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_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ 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>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 21,207<span></span>
</td>
<td class="nump">$ 18,193<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Trade receivables, net of allowance of $165 and $146, respectively</a></td>
<td class="nump">4,060<span></span>
</td>
<td class="nump">4,352<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">576<span></span>
</td>
<td class="nump">393<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="Show.showAR( this, 'defref_cxdo_EquipmentFinancingReceivables', window );">Equipment financing receivables, net of allowance of $31 and $69, respectively</a></td>
<td class="nump">1,138<span></span>
</td>
<td class="nump">1,049<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostNet', window );">Contract costs</a></td>
<td class="nump">2,108<span></span>
</td>
<td class="nump">1,931<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseCurrent', window );">Prepaid expenses</a></td>
<td class="nump">993<span></span>
</td>
<td class="nump">876<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReceivable', window );">Income tax receivable</a></td>
<td class="nump">42<span></span>
</td>
<td class="nump">75<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsCurrent', window );">Other current assets</a></td>
<td class="nump">25<span></span>
</td>
<td class="nump">13<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">30,149<span></span>
</td>
<td class="nump">26,882<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetNoncurrent', window );">Contract assets, net of allowance of $122 and $127, respectively</a></td>
<td class="nump">419<span></span>
</td>
<td class="nump">406<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_LongTermEquipmentFinancingReceivables', window );">Long-term equipment financing receivables, net of allowance of $69 and $157, respectively</a></td>
<td class="nump">2,549<span></span>
</td>
<td class="nump">2,397<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">329<span></span>
</td>
<td class="nump">394<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">1,334<span></span>
</td>
<td class="nump">1,491<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="nump">19,822<span></span>
</td>
<td class="nump">20,528<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">9,454<span></span>
</td>
<td class="nump">9,454<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostNetNoncurrent', window );">Contract costs, net of current portion</a></td>
<td class="nump">2,894<span></span>
</td>
<td class="nump">2,879<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other long-term assets</a></td>
<td class="nump">499<span></span>
</td>
<td class="nump">507<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total Assets</a></td>
<td class="nump">67,449<span></span>
</td>
<td class="nump">64,938<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">861<span></span>
</td>
<td class="nump">1,003<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued expenses</a></td>
<td class="nump">6,439<span></span>
</td>
<td class="nump">6,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="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityCurrent', window );">Finance leases</a></td>
<td class="nump">2<span></span>
</td>
<td class="nump">21<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NotesPayableCurrent', window );">Notes payable</a></td>
<td class="nump">475<span></span>
</td>
<td class="nump">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="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Operating lease liabilities</a></td>
<td class="nump">467<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="Show.showAR( this, 'defref_us-gaap_TaxesPayableCurrent', window );">Income tax payable</a></td>
<td class="nump">40<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="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Contract liabilities</a></td>
<td class="nump">2,833<span></span>
</td>
<td class="nump">3,079<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">11,117<span></span>
</td>
<td class="nump">12,094<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityNoncurrent', window );">Contract liabilities, net of current portion</a></td>
<td class="nump">205<span></span>
</td>
<td class="nump">293<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityNoncurrent', window );">Finance leases, net of current portion</a></td>
<td class="nump">2<span></span>
</td>
<td class="nump">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="Show.showAR( this, 'defref_us-gaap_LongTermNotesPayable', window );">Notes payable, net of current portion</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">114<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Operating lease liabilities, net of current portion</a></td>
<td class="nump">903<span></span>
</td>
<td class="nump">1,022<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">12,227<span></span>
</td>
<td class="nump">13,525<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Stockholders' equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock, par value $0.001 per share - authorized 5,000,000 shares; none issued</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, par value $0.001 per share - authorized 50,000,000 shares, 28,990,386 shares issued and outstanding as of March 31, 2025 and 27,621,557 shares issued and outstanding as of December 31, 2024</a></td>
<td class="nump">29<span></span>
</td>
<td class="nump">28<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapital', window );">Additional paid-in capital</a></td>
<td class="nump">140,639<span></span>
</td>
<td class="nump">138,015<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Accumulated deficit</a></td>
<td class="num">(85,619)<span></span>
</td>
<td class="num">(86,790)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive income</a></td>
<td class="nump">173<span></span>
</td>
<td class="nump">160<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total stockholders' equity</a></td>
<td class="nump">55,222<span></span>
</td>
<td class="nump">51,413<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total Liabilities and Stockholders' Equity</a></td>
<td class="nump">$ 67,449<span></span>
</td>
<td class="nump">$ 64,938<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_EquipmentFinancingReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Liabilities relating to legal proceedings</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_EquipmentFinancingReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_LongTermEquipmentFinancingReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_LongTermEquipmentFinancingReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14A<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AdditionalPaidInCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset recognized for present right to economic benefit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 30: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset recognized for present right to economic benefit, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CapitalizedContractCostNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479483/340-40-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_us-gaap_CapitalizedContractCostNetNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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; classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479483/340-40-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostNetNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ContractWithCustomerAssetNetNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetNetNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_FinanceLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482548/350-20-55-24<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 100<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482598/350-20-45-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482686/350-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 28: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 29: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481231/810-10-45-25<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-5<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br><br>Reference 21: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LongTermNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of notes payable (with maturities initially due after one year or beyond the operating cycle if longer), excluding current portion.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_NotesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying values as of the balance sheet date of the portions of long-term notes payable due within one year or the operating cycle if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NotesPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncurrent assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482955/340-10-05-5<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483032/340-10-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478451/942-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated undistributed earnings (deficit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_TaxesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TaxesPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>15
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Condensed Consolidated Balance Sheets</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="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Allowance For Doubtful Accounts - Trade Receivables</a></td>
<td class="nump">$ 165<span></span>
</td>
<td class="nump">$ 146<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="Show.showAR( this, 'defref_cxdo_AllowanceForEquipmentFinancingReceivable', window );">Allowance For Equipment Financing Receivable</a></td>
<td class="nump">31<span></span>
</td>
<td class="nump">69<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_AllowanceForContractAssets', window );">Allowance For Contract Assets</a></td>
<td class="nump">122<span></span>
</td>
<td class="nump">127<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="Show.showAR( this, 'defref_cxdo_AllowanceForLongTermEquipmentFinancingReceivable', window );">Allowance For Long Term Equipment Financing Receivable</a></td>
<td class="nump">$ 69<span></span>
</td>
<td class="nump">$ 157<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred Stock, Par Value</a></td>
<td class="nump">$ 0.001<span></span>
</td>
<td class="nump">$ 0.001<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred Stock, Authorized</a></td>
<td class="nump">5,000,000<span></span>
</td>
<td class="nump">5,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="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred Stock, 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="Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common Stock, Par Value</a></td>
<td class="nump">$ 0.001<span></span>
</td>
<td class="nump">$ 0.001<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common Stock, Authorized</a></td>
<td class="nump">50,000,000<span></span>
</td>
<td class="nump">50,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="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common Stock, Issued</a></td>
<td class="nump">28,990,386<span></span>
</td>
<td class="nump">27,621,557<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common Stock, Outstanding</a></td>
<td class="nump">28,990,386<span></span>
</td>
<td class="nump">27,621,557<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_AllowanceForContractAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AllowanceForContractAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_AllowanceForEquipmentFinancingReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AllowanceForEquipmentFinancingReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_AllowanceForLongTermEquipmentFinancingReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AllowanceForLongTermEquipmentFinancingReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Operations (Unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementAbstract', window );"><strong>Condensed Consolidated Statements of Operations (Unaudited)</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="Show.showAR( this, 'defref_cxdo_ServiceRevenue', window );">Service revenue</a></td>
<td class="nump">$ 8,182<span></span>
</td>
<td class="nump">$ 7,845<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="Show.showAR( this, 'defref_cxdo_SoftwareSolutionsRevenue', window );">Software solutions revenue</a></td>
<td class="nump">6,868<span></span>
</td>
<td class="nump">5,146<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_ProductRevenue', window );">Product revenue</a></td>
<td class="nump">1,007<span></span>
</td>
<td class="nump">1,295<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total revenue</a></td>
<td class="nump">16,057<span></span>
</td>
<td class="nump">14,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="Show.showAR( this, 'defref_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating expenses:</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="Show.showAR( this, 'defref_cxdo_CostOfServiceRevenue', window );">Cost of service revenue</a></td>
<td class="nump">3,487<span></span>
</td>
<td class="nump">3,109<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_CostOfSoftwareSolutionsRevenue', window );">Cost of software solutions revenue</a></td>
<td class="nump">1,490<span></span>
</td>
<td class="nump">1,392<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="Show.showAR( this, 'defref_cxdo_CostOfProductRevenue', window );">Cost of product revenue</a></td>
<td class="nump">599<span></span>
</td>
<td class="nump">730<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingAndMarketingExpense', window );">Selling and marketing</a></td>
<td class="nump">4,289<span></span>
</td>
<td class="nump">4,027<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">3,519<span></span>
</td>
<td class="nump">3,296<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="nump">1,523<span></span>
</td>
<td class="nump">1,249<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="nump">14,907<span></span>
</td>
<td class="nump">13,803<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income/(loss) from operations</a></td>
<td class="nump">1,150<span></span>
</td>
<td class="nump">483<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpenseAbstract', window );"><strong>Other income/(expense):</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="Show.showAR( this, 'defref_us-gaap_InterestIncomeOther', window );">Interest income</a></td>
<td class="nump">84<span></span>
</td>
<td class="nump">5<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpenseOther', window );">Interest expense</a></td>
<td class="num">(9)<span></span>
</td>
<td class="num">(13)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other income/(expense), net</a></td>
<td class="num">(10)<span></span>
</td>
<td class="num">(14)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Total other income/(expense), net</a></td>
<td class="nump">65<span></span>
</td>
<td class="num">(22)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income/(loss) before income tax</a></td>
<td class="nump">1,215<span></span>
</td>
<td class="nump">461<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax (provision)/benefit</a></td>
<td class="num">(44)<span></span>
</td>
<td class="num">(27)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income/(loss)</a></td>
<td class="nump">$ 1,171<span></span>
</td>
<td class="nump">$ 434<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic</a></td>
<td class="nump">$ 0.04<span></span>
</td>
<td class="nump">$ 0.02<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted</a></td>
<td class="nump">$ 0.04<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted-average common shares outstanding:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic</a></td>
<td class="nump">28,024,280<span></span>
</td>
<td class="nump">26,314,903<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted</a></td>
<td class="nump">31,092,775<span></span>
</td>
<td class="nump">30,142,100<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_CostOfProductRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_CostOfProductRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_CostOfServiceRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_CostOfServiceRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_CostOfSoftwareSolutionsRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_CostOfSoftwareSolutionsRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_ProductRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ProductRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_ServiceRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ServiceRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_SoftwareSolutionsRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_SoftwareSolutionsRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InterestExpenseOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of interest expense classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpenseOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InterestIncomeOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of interest income earned from interest bearing assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestIncomeOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 34: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_NonoperatingIncomeExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OperatingExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 730<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482916/730-10-50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 912<br> -SubTopic 730<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479532/912-730-25-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingAndMarketingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total amount of expenses directly related to the marketing or selling of products or services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingAndMarketingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>17
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Comprehensive Income(Loss) (Unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>Condensed Consolidated Statements of Comprehensive Income(Loss) (Unaudited)</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="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income/(loss)</a></td>
<td class="nump">$ 1,171<span></span>
</td>
<td class="nump">$ 434<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTaxAbstract', window );"><strong>Other comprehensive income/(loss), net of tax</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="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation gain/(loss)</a></td>
<td class="nump">13<span></span>
</td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax', window );">Total other comprehensive income/(loss)</a></td>
<td class="nump">13<span></span>
</td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Comprehensive income/(loss)</a></td>
<td class="nump">$ 1,184<span></span>
</td>
<td class="nump">$ 435<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTaxAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTaxAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 34: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-10A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of other comprehensive income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481674/830-30-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-17<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-4<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-5<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481694/830-30-45-20<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482739/220-10-55-15<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Statements of Stockholders' Equity (Unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid-In Capital</div></th>
<th class="th"><div>Accumulated other comprehensive Income</div></th>
<th class="th"><div>Accumulated Deficit</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesIssued', window );">Balance, shares at Dec. 31, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">26,130,218<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance, amount at Dec. 31, 2023</a></td>
<td class="nump">$ 44,613<span></span>
</td>
<td class="nump">$ 26<span></span>
</td>
<td class="nump">$ 132,888<span></span>
</td>
<td class="nump">$ 166<span></span>
</td>
<td class="num">$ (88,467)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation</a></td>
<td class="nump">728<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">728<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="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment, net of tax</a></td>
<td class="nump">1<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1<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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Issuance of common stock for exercise of stock options, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">497,804<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Issuance of common stock for exercise of stock options, amount</a></td>
<td class="nump">1,049<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">1,048<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits', window );">Taxes paid on the net settlement of stock options and RSUs</a></td>
<td class="num">(60)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(60)<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="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income/(loss)</a></td>
<td class="nump">434<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">434<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesIssued', window );">Balance, shares at Mar. 31, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">26,628,022<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance, amount at Mar. 31, 2024</a></td>
<td class="nump">46,765<span></span>
</td>
<td class="nump">$ 27<span></span>
</td>
<td class="nump">134,604<span></span>
</td>
<td class="nump">167<span></span>
</td>
<td class="num">(88,033)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesIssued', window );">Balance, shares at Dec. 31, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">27,621,557<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance, amount at Dec. 31, 2024</a></td>
<td class="nump">51,413<span></span>
</td>
<td class="nump">$ 28<span></span>
</td>
<td class="nump">138,015<span></span>
</td>
<td class="nump">160<span></span>
</td>
<td class="num">(86,790)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Share-based compensation</a></td>
<td class="nump">726<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">726<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="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment, net of tax</a></td>
<td class="nump">13<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">13<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="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Issuance of common stock for exercise of stock options, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,345,852<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Issuance of common stock for exercise of stock options, amount</a></td>
<td class="nump">1,979<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">1,978<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits', window );">Taxes paid on the net settlement of stock options and RSUs</a></td>
<td class="num">(80)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(80)<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="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income/(loss)</a></td>
<td class="nump">1,171<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,171<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="Show.showAR( this, 'defref_cxdo_VestingOfRestrictedStockUnitsShares', window );">Vesting of restricted stock units, shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">22,977<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_cxdo_VestingOfRestrictedStockUnitsAmount', window );">Vesting of restricted stock units, amount</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesIssued', window );">Balance, shares at Mar. 31, 2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">28,990,386<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance, amount at Mar. 31, 2025</a></td>
<td class="nump">$ 55,222<span></span>
</td>
<td class="nump">$ 29<span></span>
</td>
<td class="nump">$ 140,639<span></span>
</td>
<td class="nump">$ 173<span></span>
</td>
<td class="num">$ (85,619)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_VestingOfRestrictedStockUnitsAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_VestingOfRestrictedStockUnitsAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_VestingOfRestrictedStockUnitsShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_VestingOfRestrictedStockUnitsShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481089/718-20-55-13<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481089/718-20-55-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 34: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-10A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value of stock issued as a result of the exercise of stock options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Cash Flows (Unaudited) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income/(loss)</a></td>
<td class="nump">$ 1,171<span></span>
</td>
<td class="nump">$ 434<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income/(loss) to net cash provided by/(used for) operating activities:</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="Show.showAR( this, 'defref_us-gaap_DepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">771<span></span>
</td>
<td class="nump">840<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="Show.showAR( this, 'defref_cxdo_AllowanceForCreditLosses', window );">Allowance for credit losses</a></td>
<td class="num">(112)<span></span>
</td>
<td class="nump">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="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based compensation</a></td>
<td class="nump">726<span></span>
</td>
<td class="nump">728<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNoncashIncomeExpense', window );">Non-cash operating lease amortization</a></td>
<td class="nump">24<span></span>
</td>
<td class="num">(2)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in assets and liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Trade receivables</a></td>
<td class="nump">273<span></span>
</td>
<td class="num">(749)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInContractWithCustomerAsset', window );">Contract assets</a></td>
<td class="num">(8)<span></span>
</td>
<td class="nump">25<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="Show.showAR( this, 'defref_cxdo_IncreaseDecreaseInEquipmentFinancingReceivables', window );">Equipment financing receivables</a></td>
<td class="num">(115)<span></span>
</td>
<td class="num">(137)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(183)<span></span>
</td>
<td class="nump">1<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="Show.showAR( this, 'defref_cxdo_IncreaseDecreaseInContractCosts', window );">Contract costs</a></td>
<td class="num">(192)<span></span>
</td>
<td class="num">(379)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidExpense', window );">Prepaid expenses</a></td>
<td class="num">(117)<span></span>
</td>
<td class="num">(391)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInIncomeTaxesReceivable', window );">Income tax receivable</a></td>
<td class="nump">33<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="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets', window );">Other assets</a></td>
<td class="num">(4)<span></span>
</td>
<td class="nump">14<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities', window );">Accounts payable and accrued expenses</a></td>
<td class="num">(695)<span></span>
</td>
<td class="num">(1,099)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable', window );">Income tax payable</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">27<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInContractWithCustomerLiability', window );">Contract liabilities</a></td>
<td class="num">(334)<span></span>
</td>
<td class="nump">508<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by/(used for) operating activities</a></td>
<td class="nump">1,238<span></span>
</td>
<td class="num">(166)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>CASH FLOWS FROM INVESTING ACTIVITIES</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchase of property and equipment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash provided by/(used for) investing activities</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="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>CASH FLOWS FROM FINANCING ACTIVITIES</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeasePrincipalPayments', window );">Repayments made on finance leases</a></td>
<td class="num">(19)<span></span>
</td>
<td class="num">(18)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfNotesPayable', window );">Repayments made on notes payable</a></td>
<td class="num">(117)<span></span>
</td>
<td class="num">(112)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromStockOptionsExercised', window );">Proceeds from exercise of options</a></td>
<td class="nump">1,979<span></span>
</td>
<td class="nump">1,049<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus', window );">Taxes paid on the net settlement of stock options and RSUs</a></td>
<td class="num">(80)<span></span>
</td>
<td class="num">(60)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash provided by/(used for) financing activities</a></td>
<td class="nump">1,763<span></span>
</td>
<td class="nump">859<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Effect of exchange rate changes on cash</a></td>
<td class="nump">13<span></span>
</td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">NET INCREASE/(DECREASE) IN CASH AND CASH EQUIVALENTS</a></td>
<td class="nump">3,014<span></span>
</td>
<td class="nump">694<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">CASH AND CASH EQUIVALENTS AT THE BEGINNING OF THE YEAR</a></td>
<td class="nump">18,193<span></span>
</td>
<td class="nump">10,347<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">CASH AND CASH EQUIVALENTS AT THE END OF THE YEAR</a></td>
<td class="nump">21,207<span></span>
</td>
<td class="nump">11,041<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_CashUsedDuringTheYearAbstract', window );"><strong>Cash used during the year for:</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="Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Income taxes, net</a></td>
<td class="num">(10)<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="Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Interest expense</a></td>
<td class="num">$ (8)<span></span>
</td>
<td class="num">$ (13)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_AllowanceForCreditLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AllowanceForCreditLosses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_CashUsedDuringTheYearAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_CashUsedDuringTheYearAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_IncreaseDecreaseInContractCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_IncreaseDecreaseInContractCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_IncreaseDecreaseInEquipmentFinancingReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Liabilities relating to legal proceedings</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_IncreaseDecreaseInEquipmentFinancingReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -SubTopic 230<br> -Topic 830<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477401/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 230<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477401/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeasePrincipalPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for principal payment on finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeasePrincipalPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 23<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-23<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-22<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncreaseDecreaseInAccruedIncomeTaxesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInContractWithCustomerAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInContractWithCustomerAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478345/912-310-45-11<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInIncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in other obligations or expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInOtherOperatingAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherOperatingAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInPrepaidExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInPrepaidExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 34: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherNoncashIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNoncashIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ProceedsFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_RepaymentsOfNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for a borrowing supported by a written promise to pay an obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>20
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Significant Accounting Policies</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="Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Significant Accounting Policies</a></td>
<td class="text"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>1. Significant Accounting Policies</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Description of Business &#8211;</strong>Crexendo, Inc. is incorporated in the state of Nevada. As used hereafter in the notes to condensed consolidated financial statements, we refer to Crexendo, Inc. and its wholly owned subsidiaries, as &#8220;we,&#8221; &#8220;us,&#8221; or &#8220;our Company.&#8221; Crexendo, Inc. is an award-winning software technology company that is a premier provider of cloud communication platform software and unified communications as a service (UCaaS) offerings, including voice, video, contact center, and managed IT services tailored to businesses of all sizes. Our cloud communications software solutions currently support over six million end users globally, through an extensive network of over 235 cloud communication platform software subscribers and our direct retail offering. The Company has two operating segments, which consist of Cloud Telecommunications and Software Solutions.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Basis of Presentation</strong><strong>&#8211;</strong>The condensed consolidated financial statements include the accounts and operations of Crexendo, Inc. and its wholly owned subsidiaries, which include Allegiant Networks, LLC, Crexendo Business Solutions, Inc., NetSapiens, LLC, Crexendo Business Solutions of Virginia, Inc., NSHC, Inc., NetSapiens Canada, Inc., NetSapiens International Limited and Crexendo International, Inc. All intercompany account balances and transactions have been eliminated in consolidation. The accompanying unaudited interim condensed consolidated financial statements have been prepared in accordance with U.S. generally accepted accounting principles (&#8220;US GAAP&#8221;), consistent in all material respects with those applied in our financial statements included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2024. Because these financial statements address interim periods, they do not include all of the information and footnotes required by U.S. generally accepted accounting principles for complete financial statements. Such interim financial information is unaudited but reflects all adjustments that in the opinion of management are necessary for the fair presentation of the interim periods presented. The results of operations presented in this Quarterly Report on Form 10-Q are not necessarily indicative of the results that may be expected for the year ending December 31, 2025 or for any future periods. This Quarterly Report on Form 10-Q should be read in conjunction with the Company&#8217;s audited financial statements and footnotes included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2024.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Foreign Currency Translation<em>-</em></strong>The functional currency of our international subsidiaries is the local currency. We translate assets and liabilities of foreign subsidiaries, whose functional currency is their local currency, at exchange rates in effect at the balance sheet date. We translate revenue and expenses at the monthly average exchange rates. We include accumulated net translation adjustments in stockholders&#8217; equity as a component of accumulated other comprehensive income (loss).</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Due to changes in exchange rates between reporting periods and changes in certain account balances, the foreign currency translation adjustment will change from period to period. During the three months ended March 31, 2025 and 2024, we recorded foreign currency translation gains/(losses) of $13, and $1, respectively, in our statements of comprehensive income (loss).</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Cash and Cash Equivalents</strong><strong>&#8211;</strong>We consider all highly liquid, short-term investments with maturities of three months or less at the time of purchase to be cash equivalents. As of March 31, 2025 and December 31, 2024, we had cash and cash equivalents in financial institutions in excess of federally insured limits in the amount of $20,451 and $17,501 respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Trade Receivables and Allowance for Credit Losses</strong><strong>&#8211;</strong>Trade receivables from our cloud telecommunications services and software solutions segments are recorded at invoiced amounts. Trade receivables are generally due within 30 days after the invoice date. We provide an allowance for credit losses based on historical loss experience, the age of the receivables, specific troubled accounts and other currently available information.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The allowance for credit losses is determined based on an assessment of historical collection experience using the aging schedule method as well as consideration of current and future economic conditions. Trade receivables are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our trade receivable credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Equipment Financing Receivables and Allowance for Credit Losses</strong><strong>&#8211;</strong>Equipment financing receivables are comprised of sales-type leases. Sales-type leases are from financing options provided to clients for cloud telecommunications equipment (IP or cloud telephone desktop devices) and are generally due in installments over periods ranging from three to five years.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We provide an allowance for credit losses based on historical loss experience, adverse situations that may affect a client's ability to pay, current economic conditions and outlook based on reasonable and supportable forecasts. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary. Equipment financing receivables are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our equipment financing receivable credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Contract Assets and Allowance for Credit Losses</strong><strong>&#8211;</strong>Contract assets primarily relate to the Company&#8217;s rights to consideration for work completed but not billed as of the reporting date. The Company recognizes a contract asset when the Company transfers products or services to a customer and the right to consideration is conditional on something other than the passage of time. The contract assets are transferred to receivables when the rights become unconditional.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The allowance for credit losses is determined based on an assessment of historical collection experience using the loss-rate method as well as consideration of current and future economic conditions and changes in our loss-rate trends. We utilize a five-year lookback period to establish our estimate of expected credit losses, as our contractual terms range from three to five years. Contract assets are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our contract assets credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Contract Costs</strong><strong>&#8211;</strong>Contract costs primarily relate to incremental commission costs paid to sales representatives and sales leadership as a result of obtaining software solutions and telecommunication service contracts which are recoverable. The Company capitalized contract costs in the amount of $5,002 and $4,810 at March 31, 2025 and December 31, 2024, respectively. Capitalized commission costs are amortized based on the transfer of goods or services to which the assets relate, which typically range from thirty-six to sixty months, and are included in selling and marketing expenses. During the three months ended March 31, 2025 and 2024, the Company amortized $822 and $500, respectively, and there was no impairment loss in relation to the costs capitalized.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Inventory</strong><strong>&#8211;</strong>Finished goods telecommunications equipment inventory is stated at the lower of cost or net realizable value (first-in, first-out method). In accordance with applicable accounting guidance, we regularly evaluate whether inventory is stated at the lower of cost or net realizable value. If net realizable value is less than cost, the write-down is recognized as a loss in earnings in the period in which the excess occurs.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Property and Equipment</strong><strong>&#8211;</strong>Depreciation and amortization expense is computed using the straight-line method in amounts sufficient to allocate the cost of depreciable assets over their estimated useful lives ranging from two to five years. The cost of leasehold improvements is amortized using the straight-line method over the shorter of the estimated useful life of the asset or the term of the related lease. Depreciable lives by asset group are as follows:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;font-size:10pt;width:100%"><tbody><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer and office equipment</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">2 to 5 years</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer software</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">3 years</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Internal-use software</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">3 years</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Furniture and fixtures</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">4 years</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Leasehold improvements</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">2 to 5 years</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Vehicles</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">5 years</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Maintenance and repairs are expensed as incurred. The cost and accumulated depreciation of property and equipment sold or otherwise retired are removed from the accounts and any related gain or loss on disposition is reflected in the statement of operations. &#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Asset Acquisitions</strong><strong> </strong><strong>&#8211; </strong>Periodically we acquire customer relationships that we account for as an asset acquisition and record a corresponding intangible asset that is amortized over its estimated useful life. Any excess of the fair value of the purchase price over the fair value of the identifiable assets and liabilities is allocated on a relative fair value basis. No goodwill is recorded in an asset acquisition. If the fair value of the assets acquired exceeds the initial consideration paid as of the date of acquisition but includes a contingent consideration arrangement and ASC 450 and ASC 815 do not apply to contingent consideration, we analogize to the guidance in ASC 323 on recognizing contingent consideration in the acquisition of an equity method investment. The Company recognizes a liability equal to the lesser of, the maximum amount of contingent consideration or the excess of the fair value of the net assets acquired over the initial cost measurement. In accordance with the requirements of ASC 323 for equity method investments, the Company recognizes any excess of the contingent consideration issued or issuable, over the amount that was initially recognized as a liability, as an additional cost of the asset acquisition. If the amount initially recognized as a liability exceeds the contingent consideration issued or issuable, the entity recognizes that amount as a reduction of the cost of the asset acquisition.&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Business Acquisitions - </strong>We account for business combinations using the acquisition method of accounting. The acquisition method of accounting requires that the purchase price, including the fair value of contingent consideration, of the acquisition be allocated to the assets acquired and liabilities assumed using the fair values determined by management as of the acquisition date. Goodwill as of the acquisition date is measured as the excess of consideration transferred over the net of the acquisition date fair values of assets acquired and the liabilities assumed. While the Company uses its best estimates and assumptions as part of the purchase price allocation process to accurately value assets acquired and liabilities assumed at the acquisition date, the Company&#8217;s estimates are inherently uncertain and subject to refinement. As a result, during the measurement period, which may be up to one year from the acquisition date, the Company records adjustments to the assets acquired and liabilities assumed, with the corresponding offset to goodwill to the extent the Company identifies adjustments to the preliminary purchase price allocation. Upon the conclusion of the measurement period or final determination of the values of assets acquired or liabilities assumed, whichever comes first, any subsequent adjustments are recorded to the consolidated statements of operations. We include the results of all acquisitions in our consolidated financial statements from the date of acquisition. Acquisition related transaction costs, such as banking, legal, accounting and other costs incurred in connection with an acquisition, are expensed as incurred in general and administrative expenses.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Goodwill </strong><strong>&#8211;&#160;</strong>We have recorded goodwill related to various business acquisitions. Goodwill is recorded when the purchase price paid for an acquisition exceeds the estimated fair value of the net identified tangible and intangible assets acquired. In each of our acquisitions, the objective of the acquisition was to expand our product offerings and customer base and to achieve synergies related to cross selling opportunities, all of which contributed to the recognition of goodwill.&#160; We test goodwill for impairment on an annual basis or more frequently if events or changes in circumstances indicate that goodwill might be impaired. Items that could reasonably be expected to negatively affect key assumptions used in estimating fair value include but are not limited to: sustained decline in our stock price due to a decline in our financial performance due to the loss of key customers, loss of key personnel, emergence of new technologies or new competitors; and decline in overall market or economic conditions leading to a decline in our stock price.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The process of estimating the fair value of goodwill is subjective and requires the Company to make estimates that may significantly impact the outcome of the analysis. A qualitative assessment considers events and circumstances such as macroeconomic conditions, industry and market conditions, cost factors and overall financial performance, as well as company specifications. If after performing this assessment, the Company concludes it is more likely than not that the fair value of the reporting unit is less than its carrying amount, then the Company must perform the quantitative test. Under the quantitative test, a goodwill impairment is identified by comparing the fair value of the reporting unit to the carrying amount, including goodwill. If the carrying amount of the reporting unit exceeds the fair value of the reporting unit, goodwill is considered impaired and an impairment charge is recognized in an amount equal to the excess, not to exceed the carrying amount of goodwill.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Impairment assessment inherently involves management judgments regarding a number of assumptions. The reporting unit fair value also depends on the future strength of the U.S. economy. New and developing competition as well as technological change could also adversely affect future fair value estimates. Due to the many variables inherent in the estimation of a reporting unit&#8217;s fair value and the relative size of the Company&#8217;s recorded goodwill, differences in assumptions could have a material effect on the estimated fair values. For further information, see Note 8 (Intangible Assets and Goodwill).</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Intangible Assets &#8211; </strong>Our intangible assets consist of customer relationships, developed technologies, trademarks and trade name. The intangible assets are amortized following the patterns in which the economic benefits are consumed or straight-line over the estimated useful life. We periodically review the estimated useful lives of our intangible assets and review these assets for impairment whenever events or changes in circumstances indicate that the carrying value of the assets may not be recoverable. The determination of impairment is based on estimates of future undiscounted cash flows. If an intangible asset is considered to be impaired, the amount of the impairment will be equal to the excess of the carrying value over the fair value of the asset. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Amortizable intangible assets are amortized over the estimated useful lives as follows:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;font-size:10pt;width:100%"><tbody><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer relationships</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">6 to 16 years</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Developed technologies</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">2 to 6 years</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Trademark and trade names</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">4 years</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Contract Liabilities </strong><strong>&#8211;&#160;</strong>Our contract liabilities consist primarily of advance consideration received from customers for telecommunications contracts. The product and monthly service revenue is recognized on completion of the implementation and the remaining activation fees are reclassified as contract liabilities.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Use of Estimates </strong><strong>&#8211; </strong>In preparing the consolidated financial statements, management makes assumptions, estimates and judgments that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the dates of the consolidated financial statements and the reported amounts of net sales and expenses during the reported periods.&#160;&#160;Specific estimates and judgments include valuation of goodwill and intangible assets in connection with business acquisitions and asset acquisitions, allowances for doubtful accounts, uncertainties related to certain income tax benefits, valuation of deferred income tax assets, valuations of share-based payments, annual incentive bonuses accrual, recoverability of long-lived assets and intangible assets, and product warranty liabilities.&#160; Management&#8217;s estimates are based on historical experience and on our expectations that are believed to be reasonable.&#160;&#160;The combination of these factors forms the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources.&#160;&#160;Actual results may differ from our current estimates and those differences may be material.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>C</strong><strong>ontingencies </strong><strong>&#8211; </strong>The Company accrues for claims and contingencies when losses become probable and reasonably estimable. As of the end of each applicable reporting period, the Company reviews each of its matters and, where it is probable that a liability has been or will be incurred, it accrues for all probable and reasonably estimable losses. Where the Company can reasonably estimate a range of losses it may incur regarding such a matter, it records an accrual for the amount within the range that constitutes its best estimate. If the Company can reasonably estimate a range but no amount within the range appears to be a better estimate than any other, it uses the amount that is the low end of such range.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Service, Software Solutions and Product Revenue Recognition </strong><strong>&#8211; </strong>Revenue is recognized upon transfer of control of promised services, software solutions or products to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services and excludes any amounts collected on behalf of third parties. We enter into contracts that can include various combinations of products and services, which are generally capable of being distinct and accounted for as separate performance obligations. We recognize revenue for delivered elements only when we determine there are no uncertainties regarding customer acceptance. Changes in the allocation of the sales price between delivered and undelivered elements can impact the timing of revenue recognized but does not change the total revenue recognized on any agreement. Revenue is recognized net of any taxes collected from customers, which are subsequently remitted to governmental authorities. For more detailed information about revenue, see Note 2.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Cost of Service Revenue </strong><strong>&#8211; </strong>Cost of service revenue includes cloud telecommunications services. Cloud telecommunications cost of service revenue primarily consists of fees we pay to third-party telecommunications and broadband Internet providers, costs of other third-party services we resell, personnel and travel expenses related to system implementation, and customer service. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Cost of Software Solutions Revenue </strong><strong>&#8211; </strong>Cost of software solutions revenue consists primarily of royalties and other fees paid to third parties whose technology or products are sold as part of the Company&#8217;s products, direct costs to manufacture and distribute products, direct costs to provide product support and professional support services, direct costs associated with delivery of the Company&#8217;s software offerings, and amortization expense related to developed technology intangible assets.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Cost of Product Revenue </strong><strong>&#8211; </strong>Cost of product revenue primarily consists of the costs associated with the purchase of desktop devices and other third-party equipment we purchase for resale.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Product Warranty &#8211; </strong>We provide for the estimated cost of product warranties at the time we recognize revenue.&#160; We evaluate our warranty obligations on a product group basis. Our standard product warranty terms generally include post-sales support and repairs or replacement of a product at no additional charge for a specified period of time. We base our estimated warranty obligation upon warranty terms, ongoing product failure rates, and current period product shipments. If actual product failure rates, repair rates or any other post-sales support costs were to differ from our estimates, we would be required to make revisions to the estimated warranty liability. Warranty terms generally last for the duration that the customer has service. &#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Contingent Consideration </strong><strong>&#8211; </strong>Contingent consideration represents deferred business acquisition and asset acquisition consideration to be paid out at some point in the future, typically over a one-year period or less from the acquisition date. Contingent consideration is recorded at the asset acquisition date fair value. Contingent consideration recorded in connection with a business acquisition is reported at fair value each reporting period until the contingency is resolved. Any changes in fair value are recognized in earnings. Contingent consideration recorded in connection with an asset acquisition is not derecognized until the related contingency is resolved and the consideration is paid or becomes payable. If the amount initially recorded as contingent consideration exceeds the amount paid or payable, the Company recognizes that excess amount as a reduction in the cost of the related intangible assets.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <strong>Research and Development &#8211; </strong>Research and development expenses consist primarily of personnel and related expenses for the Company&#8217;s research and development staff, including salaries, benefits, bonuses and stock-based compensation and the cost of certain third-party contractors. Research and development costs are expensed as incurred. Costs related to internally developed software are expensed as research and development expense until technological feasibility has been achieved, after which the costs are capitalized.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Fair Value Measurements </strong><strong>&#8211; </strong>The fair value of our financial assets and liabilities was determined based on three levels of inputs, of which the first two are considered observable and the last unobservable, that may be used to measure fair value which are the following:&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0.5in; text-align:justify;"><em>Level 1</em> &#8212; Unadjusted quoted prices that are available in active markets for the identical assets or liabilities at the measurement date.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0.5in; text-align:justify;"><em>Level 2</em> &#8212; Other observable inputs available at the measurement date, other than quoted prices included in Level 1, either directly or indirectly, including:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="width:8%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;">Quoted prices for similar assets or liabilities in active markets;</td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;">Quoted prices for identical or similar assets in non-active markets;</td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;">Inputs other than quoted prices that are observable for the asset or liability; and</td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;">Inputs that are derived principally from or corroborated by other observable market data.</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;"><em>Level 3</em> &#8212; Unobservable inputs that cannot be corroborated by observable market data and reflect the use of significant management judgment. These values are generally determined using pricing models for which the assumptions utilize management&#8217;s estimates of market participant assumptions.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Lease Obligations</strong><strong>&#8211;</strong>We determine if an agreement is a lease at inception. We evaluate the lease terms to determine whether the lease will be accounted for as an operating or finance lease. Operating leases are included in operating lease right-of-use (&#8220;ROU&#8221;) assets, operating lease liabilities, current portion, and operating lease liabilities, net of current portion in our consolidated balance sheets.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. 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 in determining the present value of lease payments. We use the implicit rate when readily determinable. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. 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 lease payments is recognized on a straight-line basis over the lease term.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">A lease that transfers substantially all of the benefits and risks incidental to ownership of property are accounted for as finance leases. At the inception of a finance lease, an asset and finance lease obligation is recorded at an amount equal to the lesser of the present value of the minimum lease payments and the property&#8217;s fair market value. Finance lease obligations are classified as either current or long-term based on the due dates of future minimum lease payments, net of interest.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Notes Payable</strong><strong>&#8211;</strong>We record notes payable net of any discounts or premiums. Discounts and premiums are amortized as interest expense or income over the life of the note in such a way as to result in a constant rate of interest when applied to the amount outstanding at the beginning of any given period.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Income Taxes &#8211;</strong>We recognize a liability or asset for the deferred tax consequences of all temporary differences between the tax basis of assets and liabilities and their reported amounts in the consolidated financial statements that will result in taxable or deductible amounts in future years when the reported amounts of the assets and liabilities are recovered or settled. Accruals for uncertain tax positions are provided for in accordance with accounting guidance. Accordingly, we may recognize the tax benefits from an uncertain tax position only if it is more-likely-than-not that the tax position will be sustained on examination by the taxing authorities, based on the technical merits of the position. The tax benefits recognized in the financial statements from such a position should be measured based on the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement. Accounting guidance is also provided on de-recognition of income tax assets and liabilities, classification of current and deferred income tax assets and liabilities, accounting for interest and penalties associated with tax positions, and income tax disclosures. Judgment is required in assessing the future tax consequences of events that have been recognized in the financial statements or tax returns. Variations in the actual outcome of these future tax consequences could materially impact our financial position, results of operations, and cash flows. In assessing the need for a valuation allowance, we evaluate all significant available positive and negative evidence, including historical operating results, estimates of future taxable income and the existence of prudent and feasible tax planning strategies. At December 31, 2024, we determined that it is more likely-than-not that we will not be able to realize our deferred income tax assets in the future. A valuation allowance of $5,417 and $5,417 was recorded against our gross deferred tax asset balance as of March 31, 2025 and December 31, 2024, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Interest and penalties associated with income taxes are classified as income tax expense in the condensed consolidated statements of operations.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Stock-Based Compensation</strong><strong>&#8211;</strong>For equity-classified awards, compensation expense is recognized over the requisite service period based on the computed fair value on the grant date of the award. Equity classified awards include the issuance of stock options and restricted stock units (&#8220;RSUs&#8221;).</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Operating Segments</strong><strong>&#8211;</strong>Accounting guidance establishes standards for the way public business enterprises are to report information about operating segments in annual financial statements and requires enterprises to report selected information about operating segments in financial reports issued to stockholders. The Company has reorganized into two operating segments, which consist of cloud telecommunications services and software solutions. The software solutions segment includes the results of operation of NetSapiens, LLC, NSHC, Inc., NetSapiens Canada, Inc., and NetSapiens International Limited. The cloud telecommunications segment includes the results of operations of Allegiant Networks, LLC, Crexendo Business Solutions, Inc., Crexendo International, Inc., and Crexendo Business Solutions of Virginia, Inc. We generate 96% of our total revenue from customers within the United States and 4% of our total revenues from customers in other parts of the world.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Significant Customers</strong><strong>&#8211;</strong>No customer accounted for 10% or more of our total revenue for the three months ended March 31, 2025 and 2024. No customer accounted for 10% or more of our total trade accounts receivable as of March 31, 2025 and December 31, 2024.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Recently Adopted Accounting Pronouncements</strong><strong>&#8211;</strong> In November 2023, the FASB issued ASU 2023-07, <em>Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosure</em>, to require a public entity to disclose significant segment expenses and other segment items on an annual and interim basis and to provide in interim periods all disclosures about a reportable segment&#8217;s profit or loss and assets that are currently required annually. The Company adopted ASU 2023-07 (Topic 280) on a retrospective basis as of December 31, 2024, adding significant segment expense disclosures for the years ended December 31, 2024 and 2023. For more detailed information about reportable segments, see Note 16.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">In December 2023, the FASB issued ASU 2023-09, <em>Income Taxes (Topic 740): Improvements to Income Tax Disclosures</em>, to enhance the transparency and decision-usefulness of income tax disclosures, particularly in the rate reconciliation table and disclosures about income taxes paid. The ASU&#8217;s amendments are effective for annual periods beginning after December 15, 2024 on a prospective basis. Early adoption is permitted. The Company adopted ASU 2023-09 (Topic 740) as of January 1, 2025, the adoption of this ASU did not have a material impact on our quarterly income tax disclosures in our condensed consolidated financial statements and related disclosures.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Recently Issued Accounting Pronouncements</strong><strong>&#8211;</strong> In November 2024, the FASB issued ASU No. 2024-03, &#8220;<em>Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses.</em>&#8221; ASU 2024-03 requires a public business entity (&#8220;PBE&#8221;) to disclose information in the notes to financial statements about purchases of inventory, employee compensation, depreciation, intangible asset amortization, and depletion for each income statement line item that contains those expenses. Entities would also have to disclose other specific expenses, gains, or losses that are already required to be disclosed under GAAP in this same disclosure, a qualitative description of the amounts remaining that are not separately disaggregated quantitatively, and the total amount of selling expenses, as well as the PBE&#8217;s definition of selling expenses. In January 2025, the FASB Issued ASU No. 2025-01, "<em>Income Statement&#8212;Reporting Comprehensive Income&#8212;Expense Disaggregation Disclosures (Subtopic 220-40),</em>" which clarified that ASU 2024-03 is effective public business entities for annual reporting periods beginning after December 15, 2026 and interim reporting periods within annual reporting periods beginning after December 15, 2027. Implementation of ASU 2024-03 may be applied prospectively or retrospectively. The application of this new guidance is not expected to have a material impact on the Company&#8217;s financial statements, as the guidance pertains only to disclosures.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/235/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>2. Revenue</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Revenue is measured based on a consideration specified in a contract with a customer, and excludes any sales incentives and amounts collected on behalf of third parties. The Company recognizes revenue when it satisfies a performance obligation by transferring control over a product, service, or software solution to a customer. Taxes assessed by a governmental authority that are both imposed on and concurrent with a specific revenue-producing transaction, that are collected by the Company from a customer, are excluded from revenue. The following is a description of principal activities &#8211; separated by reportable segments &#8211; from which the Company generates its revenue.&#160; For more detailed information about reportable segments, see Note 16.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><em>Cloud Telecommunications Services Segment </em></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Products and services may be sold separately or in bundled packages. The typical length of a contract for service is thirty-nine to ninety months. Customers are billed for these services on a monthly basis. For bundled packages, the Company accounts for individual products and services separately if they are distinct &#8211; i.e. if a product or service is separately identifiable from other items in the bundled package and if a customer can benefit from it on its own or with other resources that are readily available to the customer. The consideration (including any discounts) is allocated between separate products and services in a bundle based on their relative stand-alone selling prices. The stand-alone selling prices are determined based on the prices at which the Company separately sells the desktop devices and telecommunication services. For items that are not sold separately (e.g. additional features) the Company estimates stand-alone selling prices using the adjusted market assessment approach. When we provide a free trial period, we do not begin to recognize recurring revenue until the trial period has ended and the customer has been billed for the services.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Desktop Devices</em><strong> &#8211;&#160;</strong>Revenue generated from the sale of telecommunications equipment (desktop devices) is recognized when the customer takes possession of the devices and the cloud telecommunications services begin. The Company typically bills and collects the fees for the equipment upon entering into a contract with a customer. Cash receipts are recorded as a contract liability until implementation is complete and the services begin. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Equipment Financing Revenue</em><strong> &#8211;&#160;</strong>Fees generated from renting our cloud telecommunication equipment (IP or cloud telephone desktop devices) through leasing contracts are recognized as revenue based on whether the lease qualifies as an operating lease or sales-type lease. The two primary accounting provisions which we use to classify transactions as sales-type or operating leases are: 1) lease term to determine if it is equal to or greater than 75% of the economic life of the equipment and 2) the present value of the minimum lease payments to determine if they are equal to or greater than 90% of the fair market value of the equipment at the inception of the lease. The economic life of most of our products is estimated to be three years, since this represents the most frequent contractual lease term for our products, and there is no residual value for used equipment. Residual values, if any, are established at the lease inception using estimates of fair value at the end of the lease term. The vast majority of our leases that qualify as sales-type leases are non-cancelable and include cancellation penalties approximately equal to the full value of the lease receivables. Leases that do not meet the criteria for sales-type lease accounting are accounted for as operating leases. Revenue from sales-type leases is recognized upon installation and the interest portion is deferred and recognized as earned. Revenue from operating leases in recognized ratably over the applicable service period.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Cloud Telecommunications Services</em><strong> &#8211;&#160;</strong>Cloud telecommunication services include voice, data, collaboration software, broadband Internet access, managed IT services, cloud server rental and support, managed security, cabling, software license sales, interest generated from equipment financing revenue, and support for premise-based PBX phone systems. The Company recognizes revenue as services are provided in service revenue. Fees generated from reselling broadband Internet access are recognized as revenue net of the costs charged by the third-party service providers. Cloud telecommunications services are billed and paid on a monthly basis. Our telecommunications services contracts typically have a term of thirty-nine to ninety months.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Fees, Commissions, and Other, Recognized over Time</em><strong> &#8211;&#160;</strong>Includes contracted and non-contracted items such as:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="width:8%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Contracted activation and flash fees &#8211; The Company generally allocates a portion of the activation fees to the desktop devices, which is recognized at the time of the installation or customer acceptance, and a portion to the service, which is recognized over the contract term using the straight-line method.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Non-contracted carrier cost recovery fee &#8211; This fee recovers the various costs and expenses that the Company incurs in connection with complying with legal, regulatory, and other requirements, including without limitation federal, state, and local reporting and filing requirements. This fee is assessed as a set percentage of our monthly billing and is recognized monthly.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Non-contracted administrative fees &#8211; Administrative fees are recognized as revenue on a monthly basis.</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>One-Time Fees, Commissions, and Other</em><strong> &#8211;&#160;</strong>Includes contracted and non-contracted items such as:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="width:8%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Contracted professional service revenue &#8211; Professional service revenue includes professional installation services, custom integration, and other professional services. The Company typically bills and collects professional service revenue upon entering into a contract with a customer. Professional service revenue is recognized as revenue when the performance obligations are completed.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Non-contracted cancellation fees &#8211; These cancellation fees relate to remaining contractual term buyout payments in connection with early cancellation and are billed and recognized as revenue upon receipt.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">Other non-contracted fees &#8211; These fees include disconnect fees, shipping fees, restocking fees, and porting fees. Other non-contracted fees are recognized as revenue upon receipt of payment.</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><em>Software Solutions Segment</em></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">The Software Solutions segment derives revenues from three primary sources: software licenses, software maintenance support and professional services. Software and services may be sold separately or in bundled packages. Generally, contracts with customers contain multiple performance obligations, consisting of software and services. For bundled packages, the Company accounts for individual products and services separately if they are distinct &#8211; i.e. if a product or service is separately identifiable from other items in the bundled package and if a customer can benefit from it on its own or with other resources that are readily available to the customer. The consideration (including any discounts) is allocated between separate products and services in a bundle based on their relative stand-alone selling prices. The stand-alone selling prices are determined based on the prices at which the Company separately sells the software licenses and professional services.&#160; For items that are not sold separately (e.g. additional features) the Company estimates stand-alone selling prices using the adjusted market assessment approach. When we provide a free trial period, we do not begin to recognize recurring revenue until the trial period has ended and the customer has been billed for the services.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Software Licenses</em><strong> - </strong>The Company's software licenses typically provide a perpetual right to use the Company's software. The Company also sells term-based software licenses that expire and Software-as-a-Service ("SaaS") based software which are referred to as subscription arrangements. The Company does not customize its software nor are installation services required, as the customer has a right to utilize internal resources or a third-party service company. The software is delivered before related services are provided and are functional without professional services or customer support. The Company has concluded that its software licenses are functional intellectual property that are distinct, as the user can benefit from the software on its own. The software license revenue could be recognized upon transfer of control or when the software is made available for download, as this is the point that the user of the software can direct the use of, and obtain substantially all of the remaining benefits from, the functional intellectual property. However, historical experience shows that customers regularly renegotiate the number of licenses during the installation process.&#160; Therefore, the Company recognizes revenue from software licenses when the setup is complete.&#160; The Company does not recognize software revenue related to the renewal of subscription software licenses earlier than the beginning of the subscription period. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="width:8%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>SNAPsolution&#174;</em> - a comprehensive, IP-based platform that provides a broad suite of UC services including hosted Private Branch Exchange (PBX), auto-attendant, call center, conferencing, and mobility. The platform includes a broad range of feature-sets, custom-built to provide unprecedented levels of flexibility, making the solution competitive with the market&#8217;s leading players. SNAPsolution includes a full suite of Voice over Internet Protocol (VoIP)/UC features with one low cost universal license, as opposed to pricing each feature individually. The Company licenses its platform based on concurrent sessions, not per seat/per feature. This allows service providers to oversubscribe their networks, driving down the cost per seat as volume increases. As the service provider increases their customer base, they only have to ensure they have sufficient concurrent call licenses to support users across the network. The Company recognizes one-time upfront software license revenue when the software setup is complete.</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;">&#160;</p></td><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td></tr><tr style="height:15px"><td><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>SNAPaccel &#8211; a </em>Software-as-a-Service ("SaaS") based software license referred to as subscription arrangements. The Company recognizes revenue as subscriptions are provided in service revenue on a monthly basis.</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Subscription Maintenance and Support -</em><strong> </strong>Subscription maintenance and support revenue includes revenue from maintenance service contracts, customer support, and other supportive services. The Company offers warranties on its products. The warranty period for the Company&#8217;s licensed software is generally 90 days. Certain of the Company's warranties are considered to be assurance-type in nature and do not cover anything beyond ensuring that the product is functioning as intended. Based on the guidance in ASC 606, assurance-type warranties do not represent separate performance obligations. The Company also sells separately-priced maintenance service contracts, which qualify as service-type warranties and represent separate performance obligations. The Company does not typically allow and has no history of accepting material product returns.&#160; Customer support includes software updates on a when-and-if-available basis, telephone support, integrated web-based support and bug fixes or patches. Subscription and maintenance support revenue is recognized ratably over the term of the customer support agreement, which is typically one year. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><em>Professional Services and Other - </em>The Company's professional services include consulting, technical support, resident engineer services, design services and installation services. Revenue from professional services and other is recognized when the performance obligation is complete and the customer has accepted the performance obligation.</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong><em>Disaggregation of Revenue</em></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">In the following table, revenue is disaggregated by primary major product line, and timing of revenue recognition. The table also includes a reconciliation of the disaggregated revenue with the reportable segments.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Three Months Ended March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cloud</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Software</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Telecommunications</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Solutions</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Reportable</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segments</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Major products/services lines</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Desktop devices</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,007</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,007</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Equipment financing revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">198</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">198</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Telecommunications services</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,933</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,933</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Fees, commissions, and other, recognized over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">598</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">598</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">One time fees, commissions and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">453</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">453</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software licenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,011</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,011</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Subscription maintenance and support</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,587</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,587</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Professional services and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">270</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">270</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">9,189</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">6,868</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">16,057</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Timing of revenue recognition</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Products, services, and fees recognized at a point in time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,460</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,281</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,741</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Products, services, and fees transferred over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">7,729</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4,587</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">12,316</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">9,189</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">6,868</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">16,057</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Three Months Ended March 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cloud</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Software</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Telecommunications</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Solutions</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Reportable</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segments</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Major products/services lines</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Desktop devices</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,295</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,295</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Equipment financing revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">152</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">152</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Telecommunications services</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,627</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,627</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Fees, commissions, and other, recognized over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">500</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">500</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">One time fees, commissions and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">566</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">566</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software licenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">947</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">947</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Subscription maintenance and support</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,911</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,911</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Professional services and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">288</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">288</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">9,140</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">5,146</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">14,286</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Timing of revenue recognition</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Products, services, and fees recognized at a point in time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,861</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,179</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,040</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Products, services, and fees transferred over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">7,279</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">3,967</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">11,246</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">9,140</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">5,146</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">14,286</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong><em>Contract balances</em></strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; The following table provides information about receivables, contract assets, and contract liabilities from contracts with customers:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Receivables, which are included in trade receivables, net of allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,060</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,352</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Contract assets, net of allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">419</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">406</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Contract liabilities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,038</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,372</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">Significant changes in the contract assets and the contract liabilities balances during the period are as follows:</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>For the Year Ended</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Contract</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Assets</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Contract</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Liabilities</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Contract</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Assets</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Contract</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Liabilities</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Revenue recognized that was included in the contract liability balance at the beginning of the period</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(1,916</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(3,154</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Increase due to cash received, excluding amounts recognized as revenue during the period</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,582</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,938</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Transferred to receivables from contract assets recognized at the beginning of the period, net of allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(83</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(302</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Increase due to additional unamortized discounts</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">96</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">366</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><em>Contract assets and allowance for credit losses</em></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our contract assets balance consists of the Company&#8217;s rights to consideration for work completed but not billed as of the reporting date. The contract assets are transferred to receivables when the rights become unconditional. Contract assets were as follows (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td></td><td style="white-space: nowrap;"></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"></td><td style="white-space: nowrap;"></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"></td></tr><tr style="height:15px"><td></td><td style="white-space: nowrap;"></td><td class="hdcell" colspan="2" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2025</strong></p></td><td style="white-space: nowrap;"></td><td style="white-space: nowrap;"></td><td class="hdcell" colspan="2" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2024</strong></p></td><td style="white-space: nowrap;"></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;">Gross contract assets</td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">541</td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">533</td><td style="width:1%;white-space: nowrap;"></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;">Less: allowance for credit losses</td><td style="width:1%;white-space: nowrap;"></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"></td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;">(122</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"></td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;">(127</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;">Contract assets, net of allowance for credit losses</td><td style="width:1%;white-space: nowrap;"></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;">419</td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;">406</td><td style="width:1%;white-space: nowrap;"></td></tr><tr style="height:15px;background-color:#ffffff"><td></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td class="ffcell" style="width:9%;"></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td class="ffcell" style="width:9%;"></td><td style="width:1%;white-space: nowrap;"></td></tr><tr style="height:15px;background-color:#cceeff"><td></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td class="ffcell" style="width:9%;"></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td class="ffcell" style="width:9%;"></td><td style="width:1%;white-space: nowrap;"></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">The allowance for credit losses was as follows (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">127</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Provision</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Write-offs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(2</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Recoveries and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(3</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">122</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The allowance for credit losses is determined based on an assessment of historical collection experience using the loss-rate method as well as consideration of current and future economic conditions and changes in our loss-rate trends. We utilize a five-year lookback period to establish our estimate of expected credit losses, as our contractual terms range from three to five years. Based on that assessment, the allowance for credit losses as a percent of gross contract assets decreased to 22.5% at March 31, 2025 from 23.8% at December 31, 2024.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong><em>Transaction price allocated to the remaining performance obligations</em></strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The following table includes estimated revenue expected to be recognized in the future related to performance obligations that are unsatisfied (or partially unsatisfied) at the end of the reporting period from the cloud telecommunications services segment (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2026</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2027</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2028</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2029 and thereafter</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Desktop devices</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">621</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">621</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Telecommunications services</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">17,729</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">16,115</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">11,090</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">6,695</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">2,433</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">54,062</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software Solutions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">11,933</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">7,699</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">4,962</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">1,409</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">1,263</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">27,266</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">30,283</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">23,814</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">16,052</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">8,104</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">3,696</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">81,949</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">All consideration from contracts with customers is included in the amounts presented above</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-9<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-15<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-12<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-13<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org/606/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenuesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings Per Common Share<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings per common share:</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="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Earnings Per Common Share</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>3. Earnings Per Common Share</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">Basic net income/(loss) per common share is computed by dividing the net income for the period by the weighted-average number of common shares outstanding during the period. Diluted net income per common share is computed giving effect to all dilutive common stock equivalents, consisting of common stock options. The following table sets forth the computation of basic and diluted net income per common share:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Net income/(loss) (in thousands) (A)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,171</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">434</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Weighted-average share reconciliation:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Weighted-average basic shares outstanding (B)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">28,024,280</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">26,314,903</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Dilutive effect of stock-based awards</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">3,068,495</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">3,827,197</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Diluted weighted-average outstanding shares of common stock (C)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">31,092,775</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">30,142,100</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Earnings per common share:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Basic (A/B)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.04</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.02</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Diluted (A/C)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.04</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.01</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">For the three months ended March 31, 2025 and 2024, the following potentially dilutive common stock, including awards granted under our equity incentive compensation plans, were excluded from the computation of diluted net income per share because including them would be anti-dilutive. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Stock options</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,303,571</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,317,937</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/260/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Trade Receivables and Allowance for Credit Losses<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsAndNotesReceivableNetAbstract', window );"><strong>Trade Receivables and Allowance for Credit Losses</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="Show.showAR( this, 'defref_us-gaap_AllowanceForCreditLossesTextBlock', window );">Trade Receivables and Allowance for Credit Losses</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>4. Trade Receivables and Allowance for Credit Losses</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our trade receivables balance consists of traditional trade receivables. Trade receivables were as follows (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Gross trade receivables</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,225</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,498</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(165</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(146</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">4,060</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">4,352</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Current trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,060</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,352</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Long-term trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">4,060</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">4,352</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">The allowance for credit losses was as follows (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">146</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Provision</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">48</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Write-offs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(31</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Recoveries and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">165</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The allowance for credit losses is determined based on an assessment of historical collection experience using the aging schedule method as well as consideration of current and future economic conditions. Based on that assessment, the allowance for credit losses as a percentage of gross accounts receivable increased to 3.9% at March 31, 2025 from 3.3% at December 31, 2024.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsAndNotesReceivableNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsAndNotesReceivableNetAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForCreditLossesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for allowance for credit losses.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 310<br> -Publisher FASB<br> -URI https://asc.fasb.org/310/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForCreditLossesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Equipment Financing Receivables and Allowance for Credit Losses<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract', window );"><strong>Equipment Financing Receivables and Allowance for Credit Losses</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="Show.showAR( this, 'defref_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock', window );">Equipment Financing Receivables and Allowance for Credit Losses</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>5. Equipment Financing Receivables and Allowance for Credit Losses</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our equipment financing receivables balance consists of sales-type leases arising from lease financing of cloud telecommunication equipment (IP or cloud telephone desktop devices) bundled and sold with our cloud telecommunications services. The majority of our leases that qualify as sales-type leases are non-cancelable and include cancellation penalties approximately equal to the full value of the lease receivables. Revenue from sales-type leases is recognized upon installation and the interest portion is deferred and recognized as earned. These receivables are typically collateralized by a security interest in the underlying equipment. Equipment financing receivables were as follows (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Gross equipment financing receivables</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,291</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,164</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: unearned income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(1,504</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(1,492</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(100</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(226</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Equipment financing receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,687</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,446</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Current equipment financing receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,138</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,049</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Long-term equipment financing&#160; receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,549</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,397</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Equipment financing receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,687</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,446</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; A summary of our gross equipment financing receivables&#8217; future contractual maturities, is as follows (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Year ending December 31,</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2025 remaining</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,416</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,579</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2027</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,222</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2028</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">748</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2029</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">326</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2030 and thereafter</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">5,291</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px"><em>Allowance for Credit Losses</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">The allowance for credit losses was as follows (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">226</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Provision</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Write-offs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(8</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Recoveries and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(118</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">100</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="font-size:10pt;font-family:times new roman;margin:0px"><em>Aging of Receivables</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">The aging of gross equipment financing receivables was as follows (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Past due amounts 0 - 90 days</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,677</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,444</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Past due amounts &gt; 90 days</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">10</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,687</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,446</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our equipment financing receivable portfolio is primarily in the United States. The allowance for credit losses is determined principally based on an assessment of origination year and past collection experience as well as consideration of current and future economic conditions and changes in our customer collection trends. Based on that assessment, the allowance for credit losses as a percentage of gross equipment financing receivables (net of unearned income) decreased to 2.7% at March 31, 2025 from 6.1% at December 31, 2024.</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">The allowance for credit losses represents an estimate of the losses expected to be incurred from the Company's equipment financing receivable portfolio. The projected loss rates are primarily based upon historical loss experience adjusted for judgments about the probable effects of relevant observable data including current and future economic conditions as well as delinquency trends, resolution rates, and the aging of receivables. The allowance for credit losses for equipment finance receivables is inherently more difficult to estimate than the allowance for trade receivables because the underlying lease portfolio has an average maturity, at any time, of approximately three to five years and contains unbilled amounts. We consider all available information in our quarterly assessments of the adequacy of the allowance for credit losses. We believe our estimates, including any qualitative adjustments, are reasonable and have considered all reasonably available information about past events, current conditions, and reasonable and supportable forecasts of future events and economic conditions. The identification of account-specific exposure is not a significant factor in establishing the allowance for credit losses for equipment finance receivables. We continue to monitor developments in future economic conditions and trends, and as a result, our reserve may need to be updated in future periods.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">The table below shows gross equipment financing receivables and current period gross write offs by year of origination (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="26" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>December 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2021</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Prior</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Equipment Financing Receivables</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Equipment</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Financing</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Receivables</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">United States</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">418</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">1,749</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">1,071</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">429</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">80</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">40</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">3,787</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,672</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Current period gross write offs</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">6</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">2</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">8</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">36</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Prepaid Expenses<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsAbstract', window );"><strong>Prepaid Expenses</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="Show.showAR( this, 'defref_cxdo_PrepaidExpensesDisclosureTextBlock', window );">Prepaid Expenses</a></td>
<td class="text"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>6. Prepaid Expenses</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">Prepaid expenses consisted of the following (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid corporate insurance</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">32</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">88</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid software services and support</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">485</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">455</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid employee insurance premiums</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">202</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid Nasdaq listing fee</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">53</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">User group meeting fees</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">103</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">86</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid rent</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">28</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">103</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other prepaid expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">90</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">144</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total prepaid expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">993</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">876</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_PrepaidExpensesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_PrepaidExpensesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_PrepaidExpenseAndOtherAssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseAndOtherAssetsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_PropertyAndEquipmentAbstract', window );"><strong>Property and Equipment</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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">Property and Equipment</a></td>
<td class="text"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>7. Property and Equipment</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">Property and equipment consisted of the following (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer and office equipment</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,142</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,142</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer software</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">589</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">589</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Internal-use software</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Vehicles</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">143</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">143</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Leasehold improvements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">34</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">34</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: accumulated depreciation</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(2,593</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(2,528</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total property and equipment, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">329</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">394</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Depreciation expense is included in general and administrative expenses and totaled $65 and $80 for the three months ended March 31, 2025 and 2024, respectively.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_PropertyAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_PropertyAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/360/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets and Goodwill<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Intangible Assets and Goodwill</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="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock', window );">Intangible Assets And Goodwill</a></td>
<td class="text"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>8. Intangible Assets and Goodwill</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">Acquired intangible assets subject to amortization consist of the following (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="10" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="10" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Gross Carrying Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Accumulated Amortization</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Net Carrying Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Gross Carrying Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Accumulated Amortization</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Net Carrying Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer relationships</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">26,073</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(7,904</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">18,169</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">26,073</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(7,403</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">18,670</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Developed technologies</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">4,900</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(3,263</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">1,637</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">4,900</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(3,081</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">1,819</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Trademark and trade names</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">400</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">(384</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">16</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">400</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">(361</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">39</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total acquired intangible assets</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">31,373</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">(11,551</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">19,822</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">31,373</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">(10,845</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">20,528</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">As of March 31, 2025, the weighted average remaining useful life for customer relationships was 12.1 years, developed technologies was 2.2 years, and trademarks and trade names was 0.2 years.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Amortization expense for customer relationships intangible assets is included in sales and marketing expenses and totaled $501 and $527 for the three months ended March 31, 2025 and 2024, respectively. Amortization expense for developed technologies intangible assets is included in cost of software solutions revenue and totaled $182 and $203 for the three months ended March 31, 2025 and 2024, respectively. Amortization expense for trademark and trade name intangible assets is included in general and administrative expenses and totaled $23 and $30 for the three months ended March 31, 2025 and 2024, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">As of March 31, 2025, annual amortization of definite lived intangible assets, based on existing intangible assets and current useful lives, is estimated to be the following (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Year ending December 31,</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2025 remaining</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,064</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,457</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2027</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,202</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2028</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,637</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2029</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,557</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2030 and thereafter</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">9,905</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">19,822</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The following table provides a summary of changes in the carrying amounts of goodwill (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Goodwill</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at January 1, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">9,454</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Additions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">9,454</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Additions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">9,454</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/350-30/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/350-20/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Expenses<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PayablesAndAccrualsAbstract', window );"><strong>Accrued Expenses</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="Show.showAR( this, 'defref_us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock', window );">Accrued Expenses</a></td>
<td class="text"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>9. Accrued Expenses</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">Accrued expenses consisted of the following (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Accrued wages and benefits</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,045</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,828</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Accrued accounts payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,915</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,579</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Accrued sales and telecommunications taxes</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,839</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,837</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Product warranty liability</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">31</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">32</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cloud computing arrangements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">153</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">279</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Credit cards</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">104</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">117</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">352</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">320</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total accrued expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">6,439</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">6,992</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The changes in aggregate product warranty liabilities for the three months ended March 31, 2025 and the year ended December 31, 2024 were as follows (in thousands):</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Warranty</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Liabilities</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at January 1, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">25</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Accrual for warranties</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">32</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Adjustments related to pre-existing warranties</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(4</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Warranty settlements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(21</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">32</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Accrual for warranties</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Warranty settlements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(7</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">31</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">Product warranty expense is included in cost of product revenue expense and totaled $6 and $7 for the three months ended March 31, 2025 and 2024, respectively. </p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for accounts payable, accrued expenses, and other liabilities that are classified as current at the end of the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 720<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483384/720-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Notes Payable<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Notes Payable</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="Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">Notes Payable</a></td>
<td class="text"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>10. </strong><strong>Notes Payable</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Notes payable consists of short and long-term financing arrangements:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Related party note payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">384</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">478</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">91</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">114</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">475</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">592</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: current notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(475</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(478</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Notes payable, net of current portion</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">114</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">On February 27, 2023, we entered into a promissory note with CrossFirst Bank in the amount of $278. The promissory note has a term of three (3) years with monthly payments of Eight Thousand Five Hundred Forty-Three ($8,543), including interest of 6.58%, beginning on March 27, 2023. Additionally, the promissory note is subject to certain financial covenants. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">On November 1, 2022, as part of the acquisition of Allegiant Networks, we entered into a promissory note with the seller in the amount of $1.1 million. The loan agreement has a term of three (3) years with quarterly payments of Ninety-Eight Thousand Three Hundred Eighty-One ($98,381), including interest at 4.00%, beginning on April 1, 2023. As of March 31, 2025 and December 31, 2024, the outstanding balance of the related party note payable was $384 and $478, respectively. During the three months ended March 31, 2025 and 2024, the Company paid principal of $94 and $90, respectively and interest of $4 and $8, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">As of March 31, 2025, future principal payments are scheduled as follows (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"><strong>Year ending December 31,</strong></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2025 remaining</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">361</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">114</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2027</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2028</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2029</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;">475</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 470<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/470/tableOfContent<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1C<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1I<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Line of Credit<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_LineOfCreditAbstract', window );"><strong>Line of Credit</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="Show.showAR( this, 'defref_cxdo_LineOfCreditTextBlock', window );">Line of Credit</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>11. Line of Credit</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;">The Company maintains a line of credit with a maximum principal amount of $700, payable upon demand. The line of credit expires on February 27, 2026. The line of credit bears interest at 0.50% over the Wall Street Journal Prime Rate. As of March 31, 2025, there was an outstanding balance of $0 and $700 remained available for borrowing. The line of credit is collateralized by all company assets. Additionally, the line of credit is subject to certain financial covenants.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_LineOfCreditAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_LineOfCreditAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_LineOfCreditTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_LineOfCreditTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresAbstract', window );"><strong>Fair Value Measurements</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="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresTextBlock', window );">Fair Value Measurements</a></td>
<td class="text"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>12. Fair Value Measurements</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We have financial instruments as of March 31, 2025 and December 31, 2024 for which the fair value is summarized below (in thousands):</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Carrying</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Estimated Fair</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Carrying</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Estimated Fair</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Assets:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,060</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,060</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,352</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,352</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Equipment financing receivables </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,687</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,687</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,446</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,446</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Liabilities:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Finance lease obligations</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">23</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">23</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">475</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">472</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">592</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">587</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 29.5pt; text-align:justify;">We have no liabilities for which fair value is recognized in the balance sheet on a recurring basis as of March 31, 2025 and December 31, 2024.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 107<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-107<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 100<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2E<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 940<br> -SubTopic 820<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478119/940-820-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Taxes</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="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Taxes</a></td>
<td class="text"><p style="font-size:10pt;font-family:times new roman;margin:0px"><strong>13. Income Taxes</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our effective tax rate for the three months ended March 31, 2025 and 2024 was 3.6% and 5.8%, respectively, which resulted in an income tax benefit/(provision) of $(44) and $(27), respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">As of each reporting date, management considers new evidence, both positive and negative, that could affect its view of the future realization of deferred tax assets. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income in the periods in which those temporary differences become deductible. We reduce the carrying amounts of deferred tax assets by a valuation allowance if, based on the evidence available, it is more-likely-than-not that such assets will not be realized. In making the assessment under the more-likely-than-not standard, appropriate consideration must be given to all positive and negative evidence related to the realization of the deferred tax assets. This assessment considers, among other matters, the nature, frequency and severity of current and cumulative losses, forecasts of future profitability, the duration of statutory carry-forward periods by jurisdiction, unitary versus stand-alone state tax filings, our experience with loss carryforwards expiring unutilized, and all tax planning alternatives that may be available. As of December 31, 2024, management reviewed the weight of all the positive and negative evidence available. Management reviewed negative evidence such as three years of cumulative pretax loss in the U.S. federal tax jurisdiction, and positive evidence such as projections of future pretax income and the duration of statutory carry-forward periods. As of December 31, 2024 the Company has a cumulative pretax loss for the three year lookback excluding the gain on the sale of property and equipment, which is considered significant objectively verifiable negative evidence. Management also evaluated projections of future pretax income and the duration of statutory carry-forward periods to determine if the NOL carryforwards could be utilized in whole or in part before they expire unutilized. Forecasts and projections of future income are inherently subjective and therefore generally are given less weight, based on the extent to which the assumptions can be objectively verified based on historical experience. Although historical trends utilized in our projections are objectively verifiable we assigned less weight to this positive evidence given the subjective nature of assumptions in projections. Management reviewed negative evidence related to experience of credits and loss carryforwards expiring unutilized, and determined that although negative evidence exists, it was not significant evidence, as the current loss carryforwards do not begin to expire until 2032 and therefore risk is minimal. After reviewing the weight of the positive and negative evidence, management determined that the positive evidence was not sufficient enough to overcome the negative evidence of cumulative pretax losses for the three-year lookback to conclude that it is more likely than not that deferred tax assets of $5,417 are realizable. Therefore, a valuation allowance of $5,417 was recorded against our gross deferred tax asset balance as of March 31, 2025 and December 31, 2024.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income tax.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12C<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12B<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 270<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477891/740-270-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.5.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-13<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/740/tableOfContent<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-14<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-21<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-17<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482603/740-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases</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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">Leases</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>14. Leases</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Lessee Accounting</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We determine if an agreement is a lease at inception. We lease office space, data center colocation space, other assets, and office equipment under operating leases. We lease data center equipment, including maintenance contracts and vehicles under finance leases.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Operating leases are recorded as right-of-use (&#8220;ROU&#8221;) assets and lease liabilities on the balance sheet, excluding leases that are less than 12 months. ROU assets represent our right to use the leased asset for the lease term and lease liabilities represent our obligation to make lease payments. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. As most of our leases do not provide an implicit rate, we use our estimated incremental borrowing rate at the commencement date to determine the present value of lease payments. The operating lease ROU assets also include any lease payments made and exclude lease incentives. The Company&#8217;s lease agreements do not contain any variable lease payments, material residual value guarantees or any restrictive covenants. Our lease terms may include options, at our sole discretion, to extend or terminate the lease.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We leased office space in Tempe, Arizona under a non-cancelable operating lease agreement that expired in January 2025. On August 9, 2023, in connection with the sale of our corporate office building and land, we entered into a lease agreement to leaseback the property. The operating lease agreement has an initial term of eighteen full calendar months, with an option to terminate the lease on the last day of the twelfth full calendar month with a sixty-day notice. The operating lease agreement includes fixed fees for property tax, insurance, and common area maintenance (CAM). We account for the lease components and non-lease components such as fixed fee property tax and insurance charges as a single lease component. The CAM charges are considered a separate non-lease component of the lease agreement and are excluded from the measurement of the lease liability. We utilized our incremental borrowing rate of 6.58% to determine the present value of lease payments to determine our lease liability. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $14 and $78, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We currently are in a non-cancelable commercial sublease operating agreement to sublease office space in Tempe Arizona, which is the headquarters for the Company. This sublease commenced on October 1, 2024, and will continue for thirty-seven (37) months through October 31, 2027. The base monthly rent is as follows: October 1, 2024 &#8211; September 30, 2025, $28; October 1, 2025 &#8211; September 30, 2026, $29, and October 1, 2026 &#8211; October 31, 2027, $30. The Company is entitled to three months of rent abatement, which will be January 2025, January 2026, and January 2027. If Operating Costs exceed $20 in a calendar year, then the Company shall be responsible for fifty (50%) percent of the amount exceeding $20. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $80 and $0, respectively</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We leased office space in Reston, Virginia under a non-cancelable operating lease agreement that expired in October 2024. The operating lease contained customary escalation clauses. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $0 and $13, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We currently lease office space in San Diego, California under a non-cancelable operating lease agreement that expires in 2025. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $22 and $22, respectively.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We currently lease office space in Overland Park, Kansas under a non-cancelable operating lease agreement that expires in 2027. The operating lease contains customary escalation clauses. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $41 and $51, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We currently lease other assets under multiple operating leases. The leases expire on various dates through 2027 and the interest rates range from 2.81% to 15.74%. The expense is included in cost of product expenses and totaled approximately $18 and $21 for the three months ended March 31, 2025 and 2024, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We currently lease data center colocation space in Grand Rapids, Michigan, Las Vegas, Nevada, Dallas, Texas, Lenexa, Kansas, and Phoenix, Arizona under non-cancelable operating lease agreements that expire on various dates through 2029. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $114 and $144, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We have lease agreements with lease and non-lease components, and we account for the lease and non-lease components as a single lease component. Our lease agreements do not contain any material residual value guarantees or material restrictive covenants.&#160; The Company leases equipment and support under finance lease agreements which extends through 2026. The Company also leases one vehicle under a financing agreement. The outstanding balance for finance leases was $4 and $23 as of March 31, 2025 and December 31, 2024, respectively. The Company recorded assets classified as property and equipment under finance lease obligations of $486 and $486 as of March 31, 2025 and December 31, 2024, respectively. Related accumulated depreciation totaled $419 and $403 as of March 31, 2025 and December 31, 2024, respectively. The $40 in support contracts were classified as a prepaid expense and are being amortized over the service period of three years. One support contract expired in January 2021 and the other expired in June 2024. &#160;Amortization expense is included in general and administrative expenses and totaled $23 and $1 for the three months ended March 31, 2025 and 2024, respectively. The interest rates on finance lease obligations range from 1.37% and 15.74% and interest expense was $0 and $1 for the three months ended March 31, 2025 and 2024, respectively. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The maturity of operating leases and finance lease liabilities as of March 31, 2025 are as follows:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Year ending December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Operating</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Leases</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Finance</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Leases</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2025 remaining</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">479</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">555</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2027</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">458</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2028</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">62</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2029</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">41</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total minimum lease payments</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,595</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Less: amount representing interest</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(163</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Present value of minimum lease payments</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">1,432</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">4</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Lease term and discount rate</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Weighted-average remaining lease term (years)</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Operating leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2.9</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Finance leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1.7</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Weighted-average discount rate</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Operating leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7.6</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Finance leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">15.7</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160; </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31, 2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31, 2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td colspan="8" style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Cash paid for amounts included in the measurement of lease liabilities:</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Operating cash flows from operating leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">128</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">213</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Operating cash flows from finance leases</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">1</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Financing cash flows from finance leases</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">(19</td><td style="vertical-align:bottom;white-space: nowrap;">)</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">(18</td><td style="vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Non-cash investing and financing activities:</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Additions to ROU assets obtained from:</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">New operating lease liabilities</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">New finance lease liabilities</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/842-20/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeasesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<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">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies</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="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments And Contingencies</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>15. Commitments and Contingencies</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Annual Employee Bonus Plan Accrual</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We utilize incentive bonuses to reward performance achievements, which provides potential annual cash bonus awards to Company employees, including Named Executive Officers (&#8220;NEOs&#8221;). Under the Bonus Plan, the Compensation Committee of the Board of Directors of the Company (the &#8220;Board&#8221;) has established a bonus pool of $990, for our NEOs and executive management team for the year ending December 31, 2025. The Board established a bonus pool of $350 for our non-executive employees, for the year ending December 31, 2025. Participants are eligible to receive cash bonus awards based upon achieving annual performance targets established by the Board for the year ending December 31, 2025, relating to annual revenue and adjusted EBITDA performance targets. Awards will be paid on a tiered scale based upon actual performance as a percentage of the performance targets with a floor and cap. Payments for individual performance targets met or exceeded are payable, whether or not all performance targets are met, consistent with the weighted amounts for each performance target within the bonus pools. Bonus awards for NEOs and executive management will be weighted 50% on annual revenue and 50% on Adjusted EBITDA. No bonus will be awarded for any performance target for which actual performance is less than 90% of target. At 90% or greater actual performance relative to the target, 50% of the weighted bonus amount for the performance target is payable. From 90% to 100% actual performance relative to the target, the remaining 50% of the weighted bonus amount is awarded pro rata with the percentage of actual performance exceeding 90% of target (i.e., each 1% excess over 90% of performance target equals 5% of the weighted bonus amount payable). If actual performance reaches 110% of performance target or greater for any individual performance target, then an additional 10% of the amount apportioned to that performance target will be payable as an additional bonus. Historically, for the years ended December 31, 2024 and 2023, the employee bonus plan performance targets were achieved at 100% or greater. Based on our financial performance as of March 31, 2025 and forecasted annualized results for the year ended December 31, 2025, management determined that the achievement of 100% of the annual revenue and Adjusted EBITDA performance targets is probable. Based on management&#8217;s estimate, the Company recorded an accrual of $335 for the employee bonus plan, which is included in accrued expense in the accompanying condensed consolidated balance sheet at March 31, 2025.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Purchase Obligations</em></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">In February 2024, the Company entered into a $5.4 million noncancellable five-year hosting service contract with Oracle, a third-party network service provider. The contract includes minimum quarterly commitments and the requirements to maintain the service level for the entire contract period. Under this agreement, $340 remains due during fiscal year 2025, $1.1 million will be due during fiscal 2026, $1.4 million will be due during fiscal 2027, $1.7 million will be due during fiscal 2028, and $456 will be due during fiscal 2029. During the three months ended March 31, 2025 and 2024, the Company has expensed $0 and $0, respectively of the purchase obligation and $81 and $234 is included in accrued expenses at March 31, 2025 and December 31, 2024, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><em>Legal Proceedings</em></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">In the ordinary course of business, the Company may be involved in a variety of claims, lawsuits, investigations, and other proceedings, including patent infringement claims, employment litigation, regulatory compliance matters, and contractual disputes, that can arise in the normal course of the Company's operations. The Company recognizes a provision when management believes information available prior to the issuance of the financial statements indicates it is probable a loss has been incurred as of the date of the financial statements and the amount of loss can be reasonably estimated. The Company adjusts the amount of the provision to reflect the impact of negotiations, settlements, rulings, advice of legal counsel, and other information and events pertaining to a particular case. As of March 31, 2025, the Company does not have a recorded liability for estimated losses. Legal costs are expensed as incurred.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 405<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/405-30/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482648/440-10-50-4<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/450/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 440<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478522/954-440-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482648/440-10-50-4<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 440<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/440/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingAbstract', window );"><strong>Segment Reporting</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="Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">Segment Reporting</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"><strong>16. Segment Reporting</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The Company has two reportable operating segments, which consist of cloud telecommunications services and software solutions and uses segment income/(loss) from operations to assess performance against forecasted results and allocate resources to its segments. Segment income/(loss) from operations is determined on the same basis as consolidated income/(loss) from operations presented in the Company&#8217;s consolidated statements of operations. The cloud telecommunications services segment generates revenue from selling cloud telecommunication services, products, and other internet services. The software solutions segment generates revenue from selling perpetual software licenses and software subscriptions, subscription maintenance and support, and professional services.</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Our chief operating decision maker (CODM) is our Chief Executive Officer, Jeffrey G. Korn. The CODM uses segment income/(loss) from operations before income taxes for purposes of allocating resources and evaluating financial performance predominantly in the annual budget and forecasting process. The CODM considers budget-to-actual variances on a quarterly basis using the segment income/(loss) before taxes measure when making decisions about allocating capital and personnel to the segments. The CODM does not review assets in evaluating the results of the operating segments, and therefore, such information is not presented. Segment revenue, significant segment expenses, income/(loss) from operations, other income/(expense) and income/(loss) before income tax for the three months ended March 31, 2025 and 2024 are as follows (in thousands):</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Three Months Ended March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cloud</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Software</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Telecommunications</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Solutions</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Consolidated</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Service revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">8,182</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">8,182</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software solutions revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,868</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,868</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Product revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,007</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,007</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in">Consolidated revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">9,189</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">6,868</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">16,057</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: significant and other segment expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Employee expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,926</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,245</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,171</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Commissions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,342</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">372</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,714</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Contractor expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">444</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">385</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">829</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Depreciation and amortization</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">305</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">466</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">771</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other segment items(1)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,991</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,431</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4,422</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in">Total operating expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">9,008</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">5,899</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">14,907</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Segment income/(loss) from operations</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">181</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">969</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,150</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: other segment income/(expense)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Interest income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">84</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">84</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Interest expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(9</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(9</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other income/(expense)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">6</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">(16</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">(10</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income/(loss) before income tax</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">262</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">953</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,215</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income tax benefit/(provision)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(44</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">1,171</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; </p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">(1)</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;Other segment items primarily includes third-party telecommunication charges, cost of product revenue, software costs, data center costs, and other overhead expenses.</p></td></tr></tbody></table><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Three Months Ended March 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cloud</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Software</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Telecommunications</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Solutions</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Consolidated</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Service revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,845</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,845</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software solutions revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,146</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,146</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Product revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,295</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,295</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in">Consolidated revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">9,140</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">5,146</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">14,286</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: significant and other segment expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Employee expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,149</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,488</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,637</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Commissions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,181</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">196</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,377</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Contractor expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">419</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">398</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">817</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Depreciation and amortization</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">355</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">483</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">838</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other segment items(1)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,958</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,175</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4,133</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in">Total operating expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">9,062</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4,740</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">13,803</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Segment income/(loss) from operations</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">78</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">406</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">483</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: other segment income/(expense)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Interest income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Interest expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(13</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(13</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other income/(expense)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">2</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">(17</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">(15</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income/(loss) before income tax</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">72</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">389</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">461</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income tax benefit/(provision)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(27</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">434</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">(1)</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;Other segment items primarily includes third-party telecommunication charges, cost of product revenue, software costs, data center costs, and other overhead expenses.</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in">&#160;</p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">The Company operates in two geographic areas, the United States and international. Revenue by geography is based on the location of the customer from which the revenue is earned. Revenue by geographic location is as follows (in thousands): </p><p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">United States</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">15,353</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">13,431</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">International</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">704</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">855</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">16,057</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">14,286</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 34<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-34<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26C<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-15<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/280/tableOfContent<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-21<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-21<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Significant Accounting Policies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_DescriptionOfBusinessPolicyTextBlock', window );">Description of Business</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Description of Business &#8211;</strong>Crexendo, Inc. is incorporated in the state of Nevada. As used hereafter in the notes to condensed consolidated financial statements, we refer to Crexendo, Inc. and its wholly owned subsidiaries, as &#8220;we,&#8221; &#8220;us,&#8221; or &#8220;our Company.&#8221; Crexendo, Inc. is an award-winning software technology company that is a premier provider of cloud communication platform software and unified communications as a service (UCaaS) offerings, including voice, video, contact center, and managed IT services tailored to businesses of all sizes. Our cloud communications software solutions currently support over six million end users globally, through an extensive network of over 235 cloud communication platform software subscribers and our direct retail offering. The Company has two operating segments, which consist of Cloud Telecommunications and Software Solutions.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BasisOfAccountingPolicyPolicyTextBlock', window );">Basis of Presentation</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Basis of Presentation</strong><strong>&#8211;</strong>The condensed consolidated financial statements include the accounts and operations of Crexendo, Inc. and its wholly owned subsidiaries, which include Allegiant Networks, LLC, Crexendo Business Solutions, Inc., NetSapiens, LLC, Crexendo Business Solutions of Virginia, Inc., NSHC, Inc., NetSapiens Canada, Inc., NetSapiens International Limited and Crexendo International, Inc. All intercompany account balances and transactions have been eliminated in consolidation. The accompanying unaudited interim condensed consolidated financial statements have been prepared in accordance with U.S. generally accepted accounting principles (&#8220;US GAAP&#8221;), consistent in all material respects with those applied in our financial statements included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2024. Because these financial statements address interim periods, they do not include all of the information and footnotes required by U.S. generally accepted accounting principles for complete financial statements. Such interim financial information is unaudited but reflects all adjustments that in the opinion of management are necessary for the fair presentation of the interim periods presented. The results of operations presented in this Quarterly Report on Form 10-Q are not necessarily indicative of the results that may be expected for the year ending December 31, 2025 or for any future periods. This Quarterly Report on Form 10-Q should be read in conjunction with the Company&#8217;s audited financial statements and footnotes included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2024.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Foreign Currency Translation</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Foreign Currency Translation<em>-</em></strong>The functional currency of our international subsidiaries is the local currency. We translate assets and liabilities of foreign subsidiaries, whose functional currency is their local currency, at exchange rates in effect at the balance sheet date. We translate revenue and expenses at the monthly average exchange rates. We include accumulated net translation adjustments in stockholders&#8217; equity as a component of accumulated other comprehensive income (loss).</p><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Due to changes in exchange rates between reporting periods and changes in certain account balances, the foreign currency translation adjustment will change from period to period. During the three months ended March 31, 2025 and 2024, we recorded foreign currency translation gains/(losses) of $13, and $1, respectively, in our statements of comprehensive income (loss).</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and Cash Equivalents</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Cash and Cash Equivalents</strong><strong>&#8211;</strong>We consider all highly liquid, short-term investments with maturities of three months or less at the time of purchase to be cash equivalents. As of March 31, 2025 and December 31, 2024, we had cash and cash equivalents in financial institutions in excess of federally insured limits in the amount of $20,451 and $17,501 respectively.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TradeAndOtherAccountsReceivablePolicy', window );">Trade Receivables and Allowance for Credit Losses</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Trade Receivables and Allowance for Credit Losses</strong><strong>&#8211;</strong>Trade receivables from our cloud telecommunications services and software solutions segments are recorded at invoiced amounts. Trade receivables are generally due within 30 days after the invoice date. We provide an allowance for credit losses based on historical loss experience, the age of the receivables, specific troubled accounts and other currently available information.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The allowance for credit losses is determined based on an assessment of historical collection experience using the aging schedule method as well as consideration of current and future economic conditions. Trade receivables are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our trade receivable credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary.</p><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="Show.showAR( this, 'defref_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock', window );">Equipment Financing Receivables and Allowance for Credit Losses</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Equipment Financing Receivables and Allowance for Credit Losses</strong><strong>&#8211;</strong>Equipment financing receivables are comprised of sales-type leases. Sales-type leases are from financing options provided to clients for cloud telecommunications equipment (IP or cloud telephone desktop devices) and are generally due in installments over periods ranging from three to five years.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">We provide an allowance for credit losses based on historical loss experience, adverse situations that may affect a client's ability to pay, current economic conditions and outlook based on reasonable and supportable forecasts. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary. Equipment financing receivables are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our equipment financing receivable credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock', window );">Contract Assets and Allowance for Credit Losses</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Contract Assets and Allowance for Credit Losses</strong><strong>&#8211;</strong>Contract assets primarily relate to the Company&#8217;s rights to consideration for work completed but not billed as of the reporting date. The Company recognizes a contract asset when the Company transfers products or services to a customer and the right to consideration is conditional on something other than the passage of time. The contract assets are transferred to receivables when the rights become unconditional.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The allowance for credit losses is determined based on an assessment of historical collection experience using the loss-rate method as well as consideration of current and future economic conditions and changes in our loss-rate trends. We utilize a five-year lookback period to establish our estimate of expected credit losses, as our contractual terms range from three to five years. Contract assets are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our contract assets credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary.</p><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="Show.showAR( this, 'defref_cxdo_ContractCostsPolicyTextBlock', window );">Contract Costs</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Contract Costs</strong><strong>&#8211;</strong>Contract costs primarily relate to incremental commission costs paid to sales representatives and sales leadership as a result of obtaining software solutions and telecommunication service contracts which are recoverable. The Company capitalized contract costs in the amount of $5,002 and $4,810 at March 31, 2025 and December 31, 2024, respectively. Capitalized commission costs are amortized based on the transfer of goods or services to which the assets relate, which typically range from thirty-six to sixty months, and are included in selling and marketing expenses. During the three months ended March 31, 2025 and 2024, the Company amortized $822 and $500, respectively, and there was no impairment loss in relation to the costs capitalized.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryPolicyTextBlock', window );">Inventory</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Inventory</strong><strong>&#8211;</strong>Finished goods telecommunications equipment inventory is stated at the lower of cost or net realizable value (first-in, first-out method). In accordance with applicable accounting guidance, we regularly evaluate whether inventory is stated at the lower of cost or net realizable value. If net realizable value is less than cost, the write-down is recognized as a loss in earnings in the period in which the excess occurs.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property and Equipment</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Property and Equipment</strong><strong>&#8211;</strong>Depreciation and amortization expense is computed using the straight-line method in amounts sufficient to allocate the cost of depreciable assets over their estimated useful lives ranging from two to five years. The cost of leasehold improvements is amortized using the straight-line method over the shorter of the estimated useful life of the asset or the term of the related lease. Depreciable lives by asset group are as follows:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;font-size:10pt;width:100%"><tbody><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer and office equipment</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">2 to 5 years</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer software</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">3 years</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Internal-use software</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">3 years</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Furniture and fixtures</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">4 years</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Leasehold improvements</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">2 to 5 years</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Vehicles</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">5 years</p></td></tr></tbody></table><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Maintenance and repairs are expensed as incurred. The cost and accumulated depreciation of property and equipment sold or otherwise retired are removed from the accounts and any related gain or loss on disposition is reflected in the statement of operations. &#160;</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock', window );">Asset Acquisitions</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Asset Acquisitions</strong><strong> </strong><strong>&#8211; </strong>Periodically we acquire customer relationships that we account for as an asset acquisition and record a corresponding intangible asset that is amortized over its estimated useful life. Any excess of the fair value of the purchase price over the fair value of the identifiable assets and liabilities is allocated on a relative fair value basis. No goodwill is recorded in an asset acquisition. If the fair value of the assets acquired exceeds the initial consideration paid as of the date of acquisition but includes a contingent consideration arrangement and ASC 450 and ASC 815 do not apply to contingent consideration, we analogize to the guidance in ASC 323 on recognizing contingent consideration in the acquisition of an equity method investment. The Company recognizes a liability equal to the lesser of, the maximum amount of contingent consideration or the excess of the fair value of the net assets acquired over the initial cost measurement. In accordance with the requirements of ASC 323 for equity method investments, the Company recognizes any excess of the contingent consideration issued or issuable, over the amount that was initially recognized as a liability, as an additional cost of the asset acquisition. If the amount initially recognized as a liability exceeds the contingent consideration issued or issuable, the entity recognizes that amount as a reduction of the cost of the asset acquisition.&#160; </p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationsPolicy', window );">Business Acquisition</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Business Acquisitions - </strong>We account for business combinations using the acquisition method of accounting. The acquisition method of accounting requires that the purchase price, including the fair value of contingent consideration, of the acquisition be allocated to the assets acquired and liabilities assumed using the fair values determined by management as of the acquisition date. Goodwill as of the acquisition date is measured as the excess of consideration transferred over the net of the acquisition date fair values of assets acquired and the liabilities assumed. While the Company uses its best estimates and assumptions as part of the purchase price allocation process to accurately value assets acquired and liabilities assumed at the acquisition date, the Company&#8217;s estimates are inherently uncertain and subject to refinement. As a result, during the measurement period, which may be up to one year from the acquisition date, the Company records adjustments to the assets acquired and liabilities assumed, with the corresponding offset to goodwill to the extent the Company identifies adjustments to the preliminary purchase price allocation. Upon the conclusion of the measurement period or final determination of the values of assets acquired or liabilities assumed, whichever comes first, any subsequent adjustments are recorded to the consolidated statements of operations. We include the results of all acquisitions in our consolidated financial statements from the date of acquisition. Acquisition related transaction costs, such as banking, legal, accounting and other costs incurred in connection with an acquisition, are expensed as incurred in general and administrative expenses.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy', window );">Goodwill</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Goodwill </strong><strong>&#8211;&#160;</strong>We have recorded goodwill related to various business acquisitions. Goodwill is recorded when the purchase price paid for an acquisition exceeds the estimated fair value of the net identified tangible and intangible assets acquired. In each of our acquisitions, the objective of the acquisition was to expand our product offerings and customer base and to achieve synergies related to cross selling opportunities, all of which contributed to the recognition of goodwill.&#160; We test goodwill for impairment on an annual basis or more frequently if events or changes in circumstances indicate that goodwill might be impaired. Items that could reasonably be expected to negatively affect key assumptions used in estimating fair value include but are not limited to: sustained decline in our stock price due to a decline in our financial performance due to the loss of key customers, loss of key personnel, emergence of new technologies or new competitors; and decline in overall market or economic conditions leading to a decline in our stock price.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">The process of estimating the fair value of goodwill is subjective and requires the Company to make estimates that may significantly impact the outcome of the analysis. A qualitative assessment considers events and circumstances such as macroeconomic conditions, industry and market conditions, cost factors and overall financial performance, as well as company specifications. If after performing this assessment, the Company concludes it is more likely than not that the fair value of the reporting unit is less than its carrying amount, then the Company must perform the quantitative test. Under the quantitative test, a goodwill impairment is identified by comparing the fair value of the reporting unit to the carrying amount, including goodwill. If the carrying amount of the reporting unit exceeds the fair value of the reporting unit, goodwill is considered impaired and an impairment charge is recognized in an amount equal to the excess, not to exceed the carrying amount of goodwill.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Impairment assessment inherently involves management judgments regarding a number of assumptions. The reporting unit fair value also depends on the future strength of the U.S. economy. New and developing competition as well as technological change could also adversely affect future fair value estimates. Due to the many variables inherent in the estimation of a reporting unit&#8217;s fair value and the relative size of the Company&#8217;s recorded goodwill, differences in assumptions could have a material effect on the estimated fair values. For further information, see Note 8 (Intangible Assets and Goodwill).</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy', window );">Intangible Assets</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Intangible Assets &#8211; </strong>Our intangible assets consist of customer relationships, developed technologies, trademarks and trade name. The intangible assets are amortized following the patterns in which the economic benefits are consumed or straight-line over the estimated useful life. We periodically review the estimated useful lives of our intangible assets and review these assets for impairment whenever events or changes in circumstances indicate that the carrying value of the assets may not be recoverable. The determination of impairment is based on estimates of future undiscounted cash flows. If an intangible asset is considered to be impaired, the amount of the impairment will be equal to the excess of the carrying value over the fair value of the asset. </p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Amortizable intangible assets are amortized over the estimated useful lives as follows:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;font-size:10pt;width:100%"><tbody><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer relationships</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">6 to 16 years</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Developed technologies</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">2 to 6 years</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Trademark and trade names</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">4 years</p></td></tr></tbody></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_ContractLiabilitiesPolicyTextBlock', window );">Contract Liabilities</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Contract Liabilities </strong><strong>&#8211;&#160;</strong>Our contract liabilities consist primarily of advance consideration received from customers for telecommunications contracts. The product and monthly service revenue is recognized on completion of the implementation and the remaining activation fees are reclassified as contract liabilities.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of Estimates</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Use of Estimates </strong><strong>&#8211; </strong>In preparing the consolidated financial statements, management makes assumptions, estimates and judgments that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the dates of the consolidated financial statements and the reported amounts of net sales and expenses during the reported periods.&#160;&#160;Specific estimates and judgments include valuation of goodwill and intangible assets in connection with business acquisitions and asset acquisitions, allowances for doubtful accounts, uncertainties related to certain income tax benefits, valuation of deferred income tax assets, valuations of share-based payments, annual incentive bonuses accrual, recoverability of long-lived assets and intangible assets, and product warranty liabilities.&#160; Management&#8217;s estimates are based on historical experience and on our expectations that are believed to be reasonable.&#160;&#160;The combination of these factors forms the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources.&#160;&#160;Actual results may differ from our current estimates and those differences may be material.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesPolicyTextBlock', window );">Contingencies</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>C</strong><strong>ontingencies </strong><strong>&#8211; </strong>The Company accrues for claims and contingencies when losses become probable and reasonably estimable. As of the end of each applicable reporting period, the Company reviews each of its matters and, where it is probable that a liability has been or will be incurred, it accrues for all probable and reasonably estimable losses. Where the Company can reasonably estimate a range of losses it may incur regarding such a matter, it records an accrual for the amount within the range that constitutes its best estimate. If the Company can reasonably estimate a range but no amount within the range appears to be a better estimate than any other, it uses the amount that is the low end of such range.</p><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="Show.showAR( this, 'defref_cxdo_RevenueRecognitionSalesOfServicesPolicyTextBlock', window );">Service, Software Solutions and Product Revenue Recognition</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Service, Software Solutions and Product Revenue Recognition </strong><strong>&#8211; </strong>Revenue is recognized upon transfer of control of promised services, software solutions or products to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services and excludes any amounts collected on behalf of third parties. We enter into contracts that can include various combinations of products and services, which are generally capable of being distinct and accounted for as separate performance obligations. We recognize revenue for delivered elements only when we determine there are no uncertainties regarding customer acceptance. Changes in the allocation of the sales price between delivered and undelivered elements can impact the timing of revenue recognized but does not change the total revenue recognized on any agreement. Revenue is recognized net of any taxes collected from customers, which are subsequently remitted to governmental authorities. For more detailed information about revenue, see Note 2.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_CostOfServiceRevenuePolicyTextBlock', window );">Cost of Service Revenue</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Cost of Service Revenue </strong><strong>&#8211; </strong>Cost of service revenue includes cloud telecommunications services. Cloud telecommunications cost of service revenue primarily consists of fees we pay to third-party telecommunications and broadband Internet providers, costs of other third-party services we resell, personnel and travel expenses related to system implementation, and customer service. </p><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="Show.showAR( this, 'defref_cxdo_CostOfSoftwareSolutionsRevenuePolicyTextBlock', window );">Cost of Software Solutions Revenue</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Cost of Software Solutions Revenue </strong><strong>&#8211; </strong>Cost of software solutions revenue consists primarily of royalties and other fees paid to third parties whose technology or products are sold as part of the Company&#8217;s products, direct costs to manufacture and distribute products, direct costs to provide product support and professional support services, direct costs associated with delivery of the Company&#8217;s software offerings, and amortization expense related to developed technology intangible assets.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_CostOfProductRevenuePolicyTextBlock', window );">Cost of Product Revenue</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Cost of Product Revenue </strong><strong>&#8211; </strong>Cost of product revenue primarily consists of the costs associated with the purchase of desktop devices and other third-party equipment we purchase for resale.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyPolicy', window );">Product Warranty</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Product Warranty &#8211; </strong>We provide for the estimated cost of product warranties at the time we recognize revenue.&#160; We evaluate our warranty obligations on a product group basis. Our standard product warranty terms generally include post-sales support and repairs or replacement of a product at no additional charge for a specified period of time. We base our estimated warranty obligation upon warranty terms, ongoing product failure rates, and current period product shipments. If actual product failure rates, repair rates or any other post-sales support costs were to differ from our estimates, we would be required to make revisions to the estimated warranty liability. Warranty terms generally last for the duration that the customer has service. &#160;</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_ContingentConsiderationPolicyTextBlock', window );">Contingent Consideration</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Contingent Consideration </strong><strong>&#8211; </strong>Contingent consideration represents deferred business acquisition and asset acquisition consideration to be paid out at some point in the future, typically over a one-year period or less from the acquisition date. Contingent consideration is recorded at the asset acquisition date fair value. Contingent consideration recorded in connection with a business acquisition is reported at fair value each reporting period until the contingency is resolved. Any changes in fair value are recognized in earnings. Contingent consideration recorded in connection with an asset acquisition is not derecognized until the related contingency is resolved and the consideration is paid or becomes payable. If the amount initially recorded as contingent consideration exceeds the amount paid or payable, the Company recognizes that excess amount as a reduction in the cost of the related intangible assets.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpensePolicy', window );">Research and Development</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <strong>Research and Development &#8211; </strong>Research and development expenses consist primarily of personnel and related expenses for the Company&#8217;s research and development staff, including salaries, benefits, bonuses and stock-based compensation and the cost of certain third-party contractors. Research and development costs are expensed as incurred. Costs related to internally developed software are expensed as research and development expense until technological feasibility has been achieved, after which the costs are capitalized.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementPolicyPolicyTextBlock', window );">Fair Value Measurements</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Fair Value Measurements </strong><strong>&#8211; </strong>The fair value of our financial assets and liabilities was determined based on three levels of inputs, of which the first two are considered observable and the last unobservable, that may be used to measure fair value which are the following:&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0.5in; text-align:justify;"><em>Level 1</em> &#8212; Unadjusted quoted prices that are available in active markets for the identical assets or liabilities at the measurement date.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0.5in; text-align:justify;"><em>Level 2</em> &#8212; Other observable inputs available at the measurement date, other than quoted prices included in Level 1, either directly or indirectly, including:</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="width:8%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:4%;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;">Quoted prices for similar assets or liabilities in active markets;</td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;">Quoted prices for identical or similar assets in non-active markets;</td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;">Inputs other than quoted prices that are observable for the asset or liability; and</td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px"><span style="font-family:symbol">&#183;</span></p></td><td style="vertical-align:top;">Inputs that are derived principally from or corroborated by other observable market data.</td></tr></tbody></table><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;"><em>Level 3</em> &#8212; Unobservable inputs that cannot be corroborated by observable market data and reflect the use of significant management judgment. These values are generally determined using pricing models for which the assumptions utilize management&#8217;s estimates of market participant assumptions.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeasesPolicyTextBlock', window );">Lease Obligations</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Lease Obligations</strong><strong>&#8211;</strong>We determine if an agreement is a lease at inception. We evaluate the lease terms to determine whether the lease will be accounted for as an operating or finance lease. Operating leases are included in operating lease right-of-use (&#8220;ROU&#8221;) assets, operating lease liabilities, current portion, and operating lease liabilities, net of current portion in our consolidated balance sheets.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. 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 in determining the present value of lease payments. We use the implicit rate when readily determinable. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. 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 lease payments is recognized on a straight-line basis over the lease term.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">A lease that transfers substantially all of the benefits and risks incidental to ownership of property are accounted for as finance leases. At the inception of a finance lease, an asset and finance lease obligation is recorded at an amount equal to the lesser of the present value of the minimum lease payments and the property&#8217;s fair market value. Finance lease obligations are classified as either current or long-term based on the due dates of future minimum lease payments, net of interest.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtPolicyTextBlock', window );">Notes Payable</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Notes Payable</strong><strong>&#8211;</strong>We record notes payable net of any discounts or premiums. Discounts and premiums are amortized as interest expense or income over the life of the note in such a way as to result in a constant rate of interest when applied to the amount outstanding at the beginning of any given period.</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Income Taxes &#8211;</strong>We recognize a liability or asset for the deferred tax consequences of all temporary differences between the tax basis of assets and liabilities and their reported amounts in the consolidated financial statements that will result in taxable or deductible amounts in future years when the reported amounts of the assets and liabilities are recovered or settled. Accruals for uncertain tax positions are provided for in accordance with accounting guidance. Accordingly, we may recognize the tax benefits from an uncertain tax position only if it is more-likely-than-not that the tax position will be sustained on examination by the taxing authorities, based on the technical merits of the position. The tax benefits recognized in the financial statements from such a position should be measured based on the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement. Accounting guidance is also provided on de-recognition of income tax assets and liabilities, classification of current and deferred income tax assets and liabilities, accounting for interest and penalties associated with tax positions, and income tax disclosures. Judgment is required in assessing the future tax consequences of events that have been recognized in the financial statements or tax returns. Variations in the actual outcome of these future tax consequences could materially impact our financial position, results of operations, and cash flows. In assessing the need for a valuation allowance, we evaluate all significant available positive and negative evidence, including historical operating results, estimates of future taxable income and the existence of prudent and feasible tax planning strategies. At December 31, 2024, we determined that it is more likely-than-not that we will not be able to realize our deferred income tax assets in the future. A valuation allowance of $5,417 and $5,417 was recorded against our gross deferred tax asset balance as of March 31, 2025 and December 31, 2024, respectively.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">Interest and penalties associated with income taxes are classified as income tax expense in the condensed consolidated statements of operations.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Stock-Based Compensation</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Stock-Based Compensation</strong><strong>&#8211;</strong>For equity-classified awards, compensation expense is recognized over the requisite service period based on the computed fair value on the grant date of the award. Equity classified awards include the issuance of stock options and restricted stock units (&#8220;RSUs&#8221;).</p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingPolicyPolicyTextBlock', window );">Operating Segments</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Operating Segments</strong><strong>&#8211;</strong>Accounting guidance establishes standards for the way public business enterprises are to report information about operating segments in annual financial statements and requires enterprises to report selected information about operating segments in financial reports issued to stockholders. The Company has reorganized into two operating segments, which consist of cloud telecommunications services and software solutions. The software solutions segment includes the results of operation of NetSapiens, LLC, NSHC, Inc., NetSapiens Canada, Inc., and NetSapiens International Limited. The cloud telecommunications segment includes the results of operations of Allegiant Networks, LLC, Crexendo Business Solutions, Inc., Crexendo International, Inc., and Crexendo Business Solutions of Virginia, Inc. We generate 96% of our total revenue from customers within the United States and 4% of our total revenues from customers in other parts of the world.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MajorCustomersPolicyPolicyTextBlock', window );">Significant Customers</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Significant Customers</strong><strong>&#8211;</strong>No customer accounted for 10% or more of our total revenue for the three months ended March 31, 2025 and 2024. No customer accounted for 10% or more of our total trade accounts receivable as of March 31, 2025 and December 31, 2024.</p><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="Show.showAR( this, 'defref_cxdo_RecentlyAdoptedAccountingPronouncementsPolicyTextBlock', window );">Recently Adopted Accounting Pronouncements</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Recently Adopted Accounting Pronouncements</strong><strong>&#8211;</strong> In November 2023, the FASB issued ASU 2023-07, <em>Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosure</em>, to require a public entity to disclose significant segment expenses and other segment items on an annual and interim basis and to provide in interim periods all disclosures about a reportable segment&#8217;s profit or loss and assets that are currently required annually. The Company adopted ASU 2023-07 (Topic 280) on a retrospective basis as of December 31, 2024, adding significant segment expense disclosures for the years ended December 31, 2024 and 2023. For more detailed information about reportable segments, see Note 16.</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;">&#160;</p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;">In December 2023, the FASB issued ASU 2023-09, <em>Income Taxes (Topic 740): Improvements to Income Tax Disclosures</em>, to enhance the transparency and decision-usefulness of income tax disclosures, particularly in the rate reconciliation table and disclosures about income taxes paid. The ASU&#8217;s amendments are effective for annual periods beginning after December 15, 2024 on a prospective basis. Early adoption is permitted. The Company adopted ASU 2023-09 (Topic 740) as of January 1, 2025, the adoption of this ASU did not have a material impact on our quarterly income tax disclosures in our condensed consolidated financial statements and related disclosures.</p><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">Recently Issued Accounting Pronouncements</a></td>
<td class="text"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"><strong>Recently Issued Accounting Pronouncements</strong><strong>&#8211;</strong> In November 2024, the FASB issued ASU No. 2024-03, &#8220;<em>Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses.</em>&#8221; ASU 2024-03 requires a public business entity (&#8220;PBE&#8221;) to disclose information in the notes to financial statements about purchases of inventory, employee compensation, depreciation, intangible asset amortization, and depletion for each income statement line item that contains those expenses. Entities would also have to disclose other specific expenses, gains, or losses that are already required to be disclosed under GAAP in this same disclosure, a qualitative description of the amounts remaining that are not separately disaggregated quantitatively, and the total amount of selling expenses, as well as the PBE&#8217;s definition of selling expenses. In January 2025, the FASB Issued ASU No. 2025-01, "<em>Income Statement&#8212;Reporting Comprehensive Income&#8212;Expense Disaggregation Disclosures (Subtopic 220-40),</em>" which clarified that ASU 2024-03 is effective public business entities for annual reporting periods beginning after December 15, 2026 and interim reporting periods within annual reporting periods beginning after December 15, 2027. Implementation of ASU 2024-03 may be applied prospectively or retrospectively. The application of this new guidance is not expected to have a material impact on the Company&#8217;s financial statements, as the guidance pertains only to disclosures.</p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_ContingentConsiderationPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ContingentConsiderationPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_ContractCostsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ContractCostsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_ContractLiabilitiesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ContractLiabilitiesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_CostOfProductRevenuePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_CostOfProductRevenuePolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_CostOfServiceRevenuePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_CostOfServiceRevenuePolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_CostOfSoftwareSolutionsRevenuePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_CostOfSoftwareSolutionsRevenuePolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_DescriptionOfBusinessPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_DescriptionOfBusinessPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_RecentlyAdoptedAccountingPronouncementsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_RecentlyAdoptedAccountingPronouncementsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_RevenueRecognitionSalesOfServicesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_RevenueRecognitionSalesOfServicesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_BasisOfAccountingPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BasisOfAccountingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for business combinations and other business acquisition transactions not accounted for using the purchase method, such as an exchange of shares between entities under common control.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 15<br> -Paragraph 6<br> -SubTopic 50<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480123/805-50-15-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 15<br> -Paragraph 4<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479455/805-10-15-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 4<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479515/805-10-05-4<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479515/805-10-05-4<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479515/805-10-05-4<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 805<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479515/805-10-05-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for commitments and contingencies, which may include policies for recognizing and measuring loss and gain contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 450<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477850/954-450-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy related to debt. Includes, but is not limited to, debt issuance costs, the effects of refinancings, method of amortizing debt issuance costs and original issue discount, and classifications of debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueMeasurementPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueMeasurementPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/830/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for goodwill. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482548/350-20-55-24<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/350-20/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for intangible assets. This accounting policy may address both intangible assets subject to amortization and those that are not. The following also may be disclosed: (1) a description of intangible assets (2) the estimated useful lives of those assets (3) the amortization method used (4) how the entity assesses and measures impairment of such assets (5) how future cash flows are estimated (6) how the fair values of such asset are determined.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/350-30/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-20<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-19<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-25<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(h)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-17<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-28<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483080/330-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483489/210-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 330<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478411/912-330-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/330/tableOfContent<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483080/330-10-50-4<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 270<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482989/270-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeLeasesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MajorCustomersPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for major customers. Major customers are those that the loss of such customers would have a material adverse effect on the entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-20<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MajorCustomersPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-6<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpensePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for costs it has incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 730<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483044/730-10-05-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpensePolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for segment reporting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 29<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-29<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 36<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-36<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 29<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-29<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 29<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-29<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 29<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-29<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 29<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-29<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 29<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-29<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 29<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-29<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.C.Q3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.1.Q5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.3.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.D.2.Q6)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/718/tableOfContent<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for standard warranties including the methodology for measuring the liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TradeAndOtherAccountsReceivablePolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-6<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481569/310-20-50-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-15<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-11B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TradeAndOtherAccountsReceivablePolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-9<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-12<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UseOfEstimates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Significant Accounting Policies</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock', window );">Estimated useful life of property and equipment</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;font-size:10pt;width:100%"><tbody><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer and office equipment</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">2 to 5 years</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer software</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">3 years</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Internal-use software</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">3 years</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Furniture and fixtures</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">4 years</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Leasehold improvements</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">2 to 5 years</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Vehicles</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">5 years</p></td></tr></tbody></table><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="Show.showAR( this, 'defref_cxdo_ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock', window );">Estimated useful life of Intangible assets</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;font-size:10pt;width:100%"><tbody><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer relationships</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">6 to 16 years</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Developed technologies</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">2 to 6 years</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="width:72%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Trademark and trade names</p></td><td style="width:12%;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">4 years</p></td></tr></tbody></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>nonnum:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>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="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Disaggregation of revenue</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Three Months Ended March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cloud</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Software</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Telecommunications</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Solutions</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Reportable</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segments</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Major products/services lines</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Desktop devices</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,007</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,007</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Equipment financing revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">198</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">198</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Telecommunications services</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,933</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,933</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Fees, commissions, and other, recognized over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">598</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">598</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">One time fees, commissions and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">453</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">453</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software licenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,011</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,011</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Subscription maintenance and support</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,587</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,587</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Professional services and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">270</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">270</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">9,189</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">6,868</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">16,057</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Timing of revenue recognition</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Products, services, and fees recognized at a point in time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,460</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,281</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,741</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Products, services, and fees transferred over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">7,729</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4,587</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">12,316</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">9,189</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">6,868</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">16,057</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Three Months Ended March 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cloud</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Software</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Telecommunications</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Solutions</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Reportable</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segments</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Major products/services lines</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Desktop devices</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,295</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,295</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Equipment financing revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">152</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">152</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Telecommunications services</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,627</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,627</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Fees, commissions, and other, recognized over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">500</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">500</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">One time fees, commissions and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">566</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">566</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software licenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">947</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">947</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Subscription maintenance and support</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,911</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,911</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Professional services and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">288</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">288</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">9,140</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">5,146</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">14,286</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Timing of revenue recognition</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Products, services, and fees recognized at a point in time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,861</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,179</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,040</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Products, services, and fees transferred over time</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">7,279</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">3,967</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">11,246</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">9,140</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">5,146</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">14,286</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Contract balances</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Receivables, which are included in trade receivables, net of allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,060</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,352</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Contract assets, net of allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">419</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">406</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Contract liabilities</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,038</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,372</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock', window );">Significant changes in the contract assets and liabilities</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>For the Year Ended</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Contract</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Assets</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Contract</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Liabilities</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Contract</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Assets</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Contract</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Liabilities</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Revenue recognized that was included in the contract liability balance at the beginning of the period</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(1,916</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(3,154</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Increase due to cash received, excluding amounts recognized as revenue during the period</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,582</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,938</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Transferred to receivables from contract assets recognized at the beginning of the period, net of allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(83</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(302</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Increase due to additional unamortized discounts</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">96</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">366</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock', window );">Contract assets allowance for credit losses</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td></td><td style="white-space: nowrap;"></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"></td><td style="white-space: nowrap;"></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"></td></tr><tr style="height:15px"><td></td><td style="white-space: nowrap;"></td><td class="hdcell" colspan="2" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2025</strong></p></td><td style="white-space: nowrap;"></td><td style="white-space: nowrap;"></td><td class="hdcell" colspan="2" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"><strong>2024</strong></p></td><td style="white-space: nowrap;"></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;">Gross contract assets</td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">541</td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">533</td><td style="width:1%;white-space: nowrap;"></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;">Less: allowance for credit losses</td><td style="width:1%;white-space: nowrap;"></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"></td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;">(122</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"></td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;">(127</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;">Contract assets, net of allowance for credit losses</td><td style="width:1%;white-space: nowrap;"></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;">419</td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;">406</td><td style="width:1%;white-space: nowrap;"></td></tr><tr style="height:15px;background-color:#ffffff"><td></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td class="ffcell" style="width:9%;"></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td class="ffcell" style="width:9%;"></td><td style="width:1%;white-space: nowrap;"></td></tr><tr style="height:15px;background-color:#cceeff"><td></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td class="ffcell" style="width:9%;"></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td style="width:1%;white-space: nowrap;"></td><td class="ffcell" style="width:9%;"></td><td style="width:1%;white-space: nowrap;"></td></tr></tbody></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SecuritiesBorrowedAllowanceForCreditLossTableTextBlock', window );">Schedule of allowance for credit losses</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">127</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Provision</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Write-offs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(2</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Recoveries and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(3</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">122</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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="Show.showAR( this, 'defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock', window );">Performance obligations</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2026</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2027</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2028</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2029 and thereafter</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Desktop devices</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">621</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">621</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Telecommunications services</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">17,729</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">16,115</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">11,090</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">6,695</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">2,433</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">54,062</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software Solutions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">11,933</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">7,699</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">4,962</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">1,409</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">1,263</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">27,266</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">30,283</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">23,814</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">16,052</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">8,104</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">3,696</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">81,949</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">All consideration from contracts with customers is included in the amounts presented above</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of allowance for credit loss on right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of expected timing for satisfying remaining performance obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(1)<br> -SubTopic 10<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenuesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_SecuritiesBorrowedAllowanceForCreditLossTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of allowance for credit loss on securities borrowed.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SecuritiesBorrowedAllowanceForCreditLossTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings Per Common Share (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings per common share:</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="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of basic and diluted net income per common share</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Net income/(loss) (in thousands) (A)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,171</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">434</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px">Weighted-average share reconciliation:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Weighted-average basic shares outstanding (B)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">28,024,280</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">26,314,903</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Dilutive effect of stock-based awards</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">3,068,495</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">3,827,197</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Diluted weighted-average outstanding shares of common stock (C)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">31,092,775</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">30,142,100</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Earnings per common share:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Basic (A/B)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.04</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.02</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">Diluted (A/C)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.04</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">0.01</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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="Show.showAR( this, 'defref_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock', window );">Schedule of common stock not included in the computation of diluted income per share</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Stock options</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,303,571</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,317,937</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Trade Receivables and Allowance for Credit Losses (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsAndNotesReceivableNetAbstract', window );"><strong>Trade Receivables and Allowance for Credit Losses</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="Show.showAR( this, 'defref_cxdo_ScheduleOFtradeReceivablesTableTextBlock', window );">Schedule of trade receivables balance consists of traditional trade receivables</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Gross trade receivables</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,225</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,498</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(165</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(146</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">4,060</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">4,352</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Current trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,060</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,352</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Long-term trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">4,060</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">4,352</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><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="Show.showAR( this, 'defref_cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock', window );">Schedule of allowance for credit losses</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">146</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Provision</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">48</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Write-offs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(31</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Recoveries and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">165</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_ScheduleOFtradeReceivablesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ScheduleOFtradeReceivablesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_AccountsAndNotesReceivableNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsAndNotesReceivableNetAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Equipment Financing Receivables and Allowance for Credit Losses (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract', window );"><strong>Equipment Financing Receivables and Allowance for Credit Losses</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="Show.showAR( this, 'defref_us-gaap_ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock', window );">Schedule of financing receivables</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Gross equipment financing receivables</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,291</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,164</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: unearned income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(1,504</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(1,492</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: allowance for credit losses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(100</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(226</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Equipment financing receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,687</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,446</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Current equipment financing receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,138</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,049</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Long-term equipment financing&#160; receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,549</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,397</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Equipment financing receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,687</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,446</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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="Show.showAR( this, 'defref_us-gaap_SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock', window );">Schedule of financing receivables future contractual maturities</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Year ending December 31,</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2025 remaining</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,416</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,579</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2027</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,222</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2028</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">748</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2029</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">326</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2030 and thereafter</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">5,291</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock', window );">Schedule of financing receivables Allowance for Credit Losses</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">226</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Provision</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Write-offs</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(8</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Recoveries and other</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(118</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">100</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><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="Show.showAR( this, 'defref_cxdo_ScheduleOfAgingOfReceivablesTableTextBlock', window );">Schedule of Aging of Receivables</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Past due amounts 0 - 90 days</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,677</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,444</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Past due amounts &gt; 90 days</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">10</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,687</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">3,446</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock', window );">Schedule of financing receivables and current period gross write offs</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="26" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>December 31,</strong></p><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2023</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2022</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2021</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Prior</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Equipment Financing Receivables</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Equipment</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Financing</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Receivables</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">United States</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">418</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">1,749</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">1,071</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">429</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">80</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">40</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">3,787</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,672</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Current period gross write offs</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">6</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">2</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">8</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="vertical-align:bottom;text-align:right;">36</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_ScheduleOfAgingOfReceivablesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ScheduleOfAgingOfReceivablesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of allowance for credit loss on financing receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-11B<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of maturity of undiscounted cash flows to be received on annual basis for sales-type and direct financing leases receivable. Includes, but is not limited to, reconciliation to lease receivable recognized in statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479773/842-30-50-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of financing receivable on nonaccrual status.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-7<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Prepaid Expenses (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsAbstract', window );"><strong>Prepaid Expenses</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="Show.showAR( this, 'defref_cxdo_ScheduleOfPrepaidExpensesTableTextBlock', window );">Schedule of Prepaid expenses</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid corporate insurance</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">32</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">88</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid software services and support</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">485</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">455</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid employee insurance premiums</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">202</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid Nasdaq listing fee</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">53</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">User group meeting fees</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">103</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">86</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Prepaid rent</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">28</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">103</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other prepaid expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">90</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">144</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total prepaid expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">993</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">876</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_ScheduleOfPrepaidExpensesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ScheduleOfPrepaidExpensesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_PrepaidExpenseAndOtherAssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseAndOtherAssetsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_PropertyAndEquipmentAbstract', window );"><strong>Property and Equipment</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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Schedule of Property And Equipment</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer and office equipment</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,142</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,142</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Computer software</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">589</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">589</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Internal-use software</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">14</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Vehicles</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">143</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">143</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Leasehold improvements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">34</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">34</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: accumulated depreciation</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(2,593</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(2,528</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total property and equipment, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">329</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">394</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_PropertyAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_PropertyAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets and Goodwill (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Intangible Assets and Goodwill</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="Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of intangible assets</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="10" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="10" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Gross Carrying Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Accumulated Amortization</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Net Carrying Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Gross Carrying Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Accumulated Amortization</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Net Carrying Amount</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Customer relationships</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">26,073</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(7,904</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">18,169</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">26,073</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(7,403</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">18,670</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Developed technologies</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">4,900</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(3,263</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">1,637</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">4,900</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">(3,081</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;">1,819</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Trademark and trade names</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">400</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">(384</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">16</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">400</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">(361</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;">39</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total acquired intangible assets</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">31,373</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">(11,551</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">19,822</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">31,373</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">(10,845</td><td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;">20,528</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock', window );">Sammary of amortization of intangible assets</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Year ending December 31,</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2025 remaining</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,064</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,457</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2027</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,202</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2028</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,637</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2029</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,557</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2030 and thereafter</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">9,905</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">19,822</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_ScheduleOfGoodwillCarryingAmountTableTextBlock', window );">Schedule of goodwill carrying amount</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Goodwill</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at January 1, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">9,454</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Additions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">9,454</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Additions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">9,454</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_ScheduleOfGoodwillCarryingAmountTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ScheduleOfGoodwillCarryingAmountTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Expenses (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PayablesAndAccrualsAbstract', window );"><strong>Accrued Expenses</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="Show.showAR( this, 'defref_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock', window );">Schedule of accrued expenses</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Accrued wages and benefits</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,045</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,828</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Accrued accounts payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,915</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,579</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Accrued sales and telecommunications taxes</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,839</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,837</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Product warranty liability</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">31</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">32</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Cloud computing arrangements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">153</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">279</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Credit cards</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">104</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">117</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">352</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">320</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total accrued expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">6,439</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">6,992</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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="Show.showAR( this, 'defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Schedule of product warranty liabilities</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Warranty</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Liabilities</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at January 1, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">25</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Accrual for warranties</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">32</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Adjustments related to pre-existing warranties</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(4</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Warranty settlements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(21</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at December 31, 2024</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">32</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Accrual for warranties</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt">Warranty settlements</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(7</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Balance at March 31, 2025</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">31</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of accrued liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Notes Payable (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Notes Payable</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="Show.showAR( this, 'defref_us-gaap_ScheduleOfDebtTableTextBlock', window );">Schedule of notes payable</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Related party note payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">384</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">478</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Other notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">91</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">114</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Total notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">475</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">592</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: current notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(475</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(478</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Notes payable, net of current portion</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">114</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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="Show.showAR( this, 'defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock', window );">Schedule of principal payments of notes payable</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"><strong>Year ending December 31,</strong></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2025 remaining</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">361</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">114</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2027</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2028</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">2029</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;">Total</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;">475</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ScheduleOfDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDebtTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of maturity and sinking fund requirement for long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresAbstract', window );"><strong>Fair Value Measurements</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="Show.showAR( this, 'defref_us-gaap_FairValueByBalanceSheetGroupingTextBlock', window );">Fair value of financial instruments</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>December 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Carrying</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Estimated Fair</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Carrying</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Estimated Fair</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Value</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Assets:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Trade receivables, net</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,060</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,060</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,352</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,352</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Equipment financing receivables </p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,687</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,687</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,446</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,446</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Liabilities:</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Finance lease obligations</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">23</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">23</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Notes payable</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">475</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">472</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">592</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">587</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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_FairValueByBalanceSheetGroupingTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByBalanceSheetGroupingTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases</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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Maturity of operating lease and finance lease liabilities</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Year ending December 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Operating</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Leases</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Finance</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Leases</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2025 remaining</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">479</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2026</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">555</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2027</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">458</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2028</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">62</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">2029</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">41</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total minimum lease payments</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,595</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Less: amount representing interest</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(163</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Present value of minimum lease payments</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">1,432</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">4</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><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="Show.showAR( this, 'defref_cxdo_ScheduleOfLeaseTermAndDiscountTableTextBlock', window );">Schedule of lease term and discount rate</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Lease term and discount rate</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Weighted-average remaining lease term (years)</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Operating leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2.9</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Finance leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1.7</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Weighted-average discount rate</strong></p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Operating leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7.6</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Finance leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">15.7</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">%</td></tr></tbody></table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock', window );">Schedule of cash paid for amounts included in the measurement of lease liabilities</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31, 2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended March 31, 2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td colspan="8" style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Cash paid for amounts included in the measurement of lease liabilities:</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Operating cash flows from operating leases</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">128</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">213</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Operating cash flows from finance leases</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">1</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Financing cash flows from finance leases</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">(19</td><td style="vertical-align:bottom;white-space: nowrap;">)</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">(18</td><td style="vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Non-cash investing and financing activities:</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Additions to ROU assets obtained from:</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">New operating lease liabilities</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px">New finance lease liabilities</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="vertical-align:bottom;text-align:right;">-</td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_ScheduleOfLeaseTermAndDiscountTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ScheduleOfLeaseTermAndDiscountTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segments (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingAbstract', window );"><strong>Segment Reporting</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="Show.showAR( this, 'defref_us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock', window );">Information on reportable segments and reconciliation to condensed consolidated net (loss) income</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Three Months Ended March 31, 2025</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cloud</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Software</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Telecommunications</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Solutions</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Consolidated</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Service revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">8,182</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">8,182</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software solutions revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,868</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,868</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Product revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,007</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,007</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in">Consolidated revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">9,189</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">6,868</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">16,057</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: significant and other segment expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Employee expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,926</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">3,245</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,171</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Commissions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,342</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">372</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,714</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Contractor expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">444</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">385</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">829</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Depreciation and amortization</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">305</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">466</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">771</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other segment items(1)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,991</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,431</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4,422</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in">Total operating expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">9,008</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">5,899</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">14,907</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Segment income/(loss) from operations</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">181</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">969</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,150</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: other segment income/(expense)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Interest income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">84</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">84</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Interest expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(9</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(9</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other income/(expense)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">6</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">(16</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">(10</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income/(loss) before income tax</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">262</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">953</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,215</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income tax benefit/(provision)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(44</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">1,171</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></table><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"><tbody><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"><strong>Three Months Ended March 31, 2024</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Cloud</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Software</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td style="vertical-align:bottom;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">(In thousands)</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Telecommunications</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Solutions</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Total</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Segment</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Consolidated</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Service revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,845</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">7,845</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Software solutions revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,146</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5,146</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Product revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,295</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">-</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,295</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in">Consolidated revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">9,140</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">5,146</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">14,286</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: significant and other segment expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Employee expenses</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">4,149</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">2,488</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">6,637</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Commissions</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,181</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">196</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">1,377</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Contractor expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">419</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">398</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">817</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Depreciation and amortization</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">355</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">483</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">838</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other segment items(1)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">2,958</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">1,175</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4,133</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in">Total operating expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">9,062</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">4,740</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">13,803</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Segment income/(loss) from operations</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">78</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">406</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">483</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Less: other segment income/(expense)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Interest income</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">5</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Interest expense</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(13</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">-</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">(13</td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Other income/(expense)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">2</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">(17</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;">(15</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income/(loss) before income tax</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">72</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">389</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">461</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Income tax benefit/(provision)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">(27</td><td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;">)</td></tr><tr style="height:15px;background-color:#ffffff"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">Net income/(loss)</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="width:9%;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">434</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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="Show.showAR( this, 'defref_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock', window );">Schedule of Revenue by geography</a></td>
<td class="text"><table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"><tbody><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>Three Months Ended</strong></p><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>March 31,</strong></p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px"><td><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2025</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"><p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"><strong>2024</strong></p></td><td style="PADDING-BOTTOM: 1px;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">United States</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">15,353</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;">13,431</td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#ffffff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in">International</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">704</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;">855</td><td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr><tr style="height:15px;background-color:#cceeff"><td style="vertical-align:top;"><p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt">Total revenue</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">16,057</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td><td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;">$</td><td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;">14,286</td><td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"><p style="font-size:10pt;font-family:times new roman;margin:0px">&#160;</p></td></tr></tbody></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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of revenue from external customers by geographic areas attributed to the entity's country of domicile and to foreign countries from which the entity derives revenue.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>50
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and Fixtures [Member]</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="Show.showAR( this, 'defref_cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives', window );">Depreciable lives</a></td>
<td class="text">4 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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember', window );">Computer and Office Equipment [Member]</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="Show.showAR( this, 'defref_cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives', window );">Depreciable lives</a></td>
<td class="text">2 to 5 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cxdo_ComputerSoftwareIntangibleAssetsMember', window );">Computer Software [Member]</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="Show.showAR( this, 'defref_cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives', window );">Depreciable lives</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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cxdo_InternalUseComputerSoftwareMember', window );">Internal-use Software [Member]</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="Show.showAR( this, 'defref_cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives', window );">Depreciable lives</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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold Improvements [Member]</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="Show.showAR( this, 'defref_cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives', window );">Depreciable lives</a></td>
<td class="text">2 to 5 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember', window );">Vehicles [Member]</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="Show.showAR( this, 'defref_cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives', window );">Depreciable lives</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_cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_OfficeEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_OfficeEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_ComputerSoftwareIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_ComputerSoftwareIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_InternalUseComputerSoftwareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_InternalUseComputerSoftwareMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_LeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_VehiclesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_VehiclesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies (Details 1)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=cxdo_BottomMember', window );">Bottom [Member] | Developed Technologies [Member]</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="Show.showAR( this, 'defref_cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">2 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="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=cxdo_TopMember', window );">Top [Member] | Developed Technologies [Member]</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="Show.showAR( this, 'defref_cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">6 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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cxdo_CustomerRelationshipMember', window );">Customer Relationship [Member] | Bottom [Member]</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="Show.showAR( this, 'defref_cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">6 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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cxdo_CustomerRelationshipMember', window );">Customer Relationship [Member] | Top [Member]</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="Show.showAR( this, 'defref_cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">16 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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cxdo_TrademarkTradeNamesMember', window );">Trademark and Trade Names [Member]</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="Show.showAR( this, 'defref_cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife', window );">Estimated useful lives</a></td>
<td class="text">4 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_PlanNameAxis=cxdo_BottomMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=cxdo_BottomMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_DevelopedTechnologiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_DevelopedTechnologiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=cxdo_TopMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=cxdo_TopMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_CustomerRelationshipMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_CustomerRelationshipMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_TrademarkTradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_TrademarkTradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<FILENAME>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Significant Accounting Policies (Details Narrative) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Significant 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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashEquivalentsAtCarryingValue', window );">Cash and Cash Equivalents</a></td>
<td class="nump">$ 20,451<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 17,501<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="Show.showAR( this, 'defref_cxdo_CapitalizedContractCost', window );">Capitalized contract costs</a></td>
<td class="nump">5,002<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,810<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Change in the valuation allowance for net deferred income tax assets</a></td>
<td class="nump">$ 5,417<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,417<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="Show.showAR( this, 'defref_cxdo_RevenueConcentrationRiskPercentage', window );">Revenue percentage generated from customers</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="nump">10.00%<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="Show.showAR( this, 'defref_cxdo_AccountsReceivableConcentrationRiskPercentage', window );">Accounts receivable percentage generated from customers</a></td>
<td class="nump">10.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Foreign currency translation gains/(losses)</a></td>
<td class="nump">$ 13<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherSellingAndMarketingExpense', window );">Selling and marketing expenses</a></td>
<td class="nump">$ 822<span></span>
</td>
<td class="nump">$ 500<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="Show.showAR( this, 'defref_us-gaap_GeographicDistributionAxis=cxdo_OtherCountriesMember', window );">Other Countries [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Significant 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>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_RevenueConcentrationRiskPercentage', window );">Revenue percentage generated from customers</a></td>
<td class="nump">4.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_cxdo_AccountsReceivableConcentrationRiskPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AccountsReceivableConcentrationRiskPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_CapitalizedContractCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_CapitalizedContractCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_RevenueConcentrationRiskPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_RevenueConcentrationRiskPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_CashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ForeignCurrencyTransactionGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of realized and unrealized gain (loss) from foreign currency transaction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482014/830-20-35-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481956/830-20-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481926/830-20-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481839/830-10-45-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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 increase (decrease) in the valuation allowance for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12A<br> -Subparagraph (a)(6)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12A<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherSellingAndMarketingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of selling and marketing expense classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherSellingAndMarketingExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GeographicDistributionAxis=cxdo_OtherCountriesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_GeographicDistributionAxis=cxdo_OtherCountriesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cxdo_CloudTelecommunicationsSegmentMember', window );">Cloud Telecommunications Segment [Member]</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="Show.showAR( this, 'defref_cxdo_DesktopServices', window );">Desktop devices</a></td>
<td class="nump">$ 1,007<span></span>
</td>
<td class="nump">$ 1,295<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="Show.showAR( this, 'defref_cxdo_InterestReceivedOnEquipmentFinancing', window );">Equipment financing revenue</a></td>
<td class="nump">198<span></span>
</td>
<td class="nump">152<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_TelecommunicationsServices', window );">Telecommunications services</a></td>
<td class="nump">6,933<span></span>
</td>
<td class="nump">6,627<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="Show.showAR( this, 'defref_cxdo_FeesCommissionsAndOtherRecognizedOverTime', window );">Fees, commissions, and other, recognized over time</a></td>
<td class="nump">598<span></span>
</td>
<td class="nump">500<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_OneTimeFeesCommissionsAndOther', window );">One time fees, commissions and other</a></td>
<td class="nump">453<span></span>
</td>
<td class="nump">566<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="Show.showAR( this, 'defref_cxdo_SoftwareLicenses', window );">Software licenses</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_SubscriptionMaintenanceAndSupport', window );">Subscription maintenance and support</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="Show.showAR( this, 'defref_us-gaap_ProfessionalFees', window );">Professional services and other</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="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">9,189<span></span>
</td>
<td class="nump">9,140<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="Show.showAR( this, 'defref_cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime', window );">Products, services, and fees recognized at a point in time</a></td>
<td class="nump">1,460<span></span>
</td>
<td class="nump">1,861<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_ProductsServicesAndFeesTransferredOverTime', window );">Products, services, and fees transferred over time</a></td>
<td class="nump">7,729<span></span>
</td>
<td class="nump">7,279<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="Show.showAR( this, 'defref_cxdo_RevenueRecognition', window );">Revenue recognition. Total</a></td>
<td class="nump">9,189<span></span>
</td>
<td class="nump">9,140<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cxdo_SoftwareSolutionsSegmentMember', window );">Software Solutions Segment [Member]</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="Show.showAR( this, 'defref_cxdo_DesktopServices', window );">Desktop devices</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_InterestReceivedOnEquipmentFinancing', window );">Equipment financing revenue</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_TelecommunicationsServices', window );">Telecommunications services</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_FeesCommissionsAndOtherRecognizedOverTime', window );">Fees, commissions, and other, recognized over time</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_OneTimeFeesCommissionsAndOther', window );">One time fees, commissions and other</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_SoftwareLicenses', window );">Software licenses</a></td>
<td class="nump">2,011<span></span>
</td>
<td class="nump">947<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="Show.showAR( this, 'defref_cxdo_SubscriptionMaintenanceAndSupport', window );">Subscription maintenance and support</a></td>
<td class="nump">4,587<span></span>
</td>
<td class="nump">3,911<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfessionalFees', window );">Professional services and other</a></td>
<td class="nump">270<span></span>
</td>
<td class="nump">288<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">6,868<span></span>
</td>
<td class="nump">5,146<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime', window );">Products, services, and fees recognized at a point in time</a></td>
<td class="nump">2,281<span></span>
</td>
<td class="nump">1,179<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="Show.showAR( this, 'defref_cxdo_ProductsServicesAndFeesTransferredOverTime', window );">Products, services, and fees transferred over time</a></td>
<td class="nump">4,587<span></span>
</td>
<td class="nump">3,967<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_RevenueRecognition', window );">Revenue recognition. Total</a></td>
<td class="nump">6,868<span></span>
</td>
<td class="nump">5,146<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cxdo_ReportableSegmentMember', window );">Total Reportable Segment [Member]</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="Show.showAR( this, 'defref_cxdo_DesktopServices', window );">Desktop devices</a></td>
<td class="nump">1,007<span></span>
</td>
<td class="nump">1,295<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="Show.showAR( this, 'defref_cxdo_InterestReceivedOnEquipmentFinancing', window );">Equipment financing revenue</a></td>
<td class="nump">198<span></span>
</td>
<td class="nump">152<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_TelecommunicationsServices', window );">Telecommunications services</a></td>
<td class="nump">6,933<span></span>
</td>
<td class="nump">6,627<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="Show.showAR( this, 'defref_cxdo_FeesCommissionsAndOtherRecognizedOverTime', window );">Fees, commissions, and other, recognized over time</a></td>
<td class="nump">598<span></span>
</td>
<td class="nump">500<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_OneTimeFeesCommissionsAndOther', window );">One time fees, commissions and other</a></td>
<td class="nump">453<span></span>
</td>
<td class="nump">566<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="Show.showAR( this, 'defref_cxdo_SoftwareLicenses', window );">Software licenses</a></td>
<td class="nump">2,011<span></span>
</td>
<td class="nump">947<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_SubscriptionMaintenanceAndSupport', window );">Subscription maintenance and support</a></td>
<td class="nump">4,587<span></span>
</td>
<td class="nump">3,911<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfessionalFees', window );">Professional services and other</a></td>
<td class="nump">270<span></span>
</td>
<td class="nump">288<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">16,057<span></span>
</td>
<td class="nump">14,286<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="Show.showAR( this, 'defref_cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime', window );">Products, services, and fees recognized at a point in time</a></td>
<td class="nump">3,741<span></span>
</td>
<td class="nump">3,040<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_ProductsServicesAndFeesTransferredOverTime', window );">Products, services, and fees transferred over time</a></td>
<td class="nump">12,316<span></span>
</td>
<td class="nump">11,246<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="Show.showAR( this, 'defref_cxdo_RevenueRecognition', window );">Revenue recognition. Total</a></td>
<td class="nump">$ 16,057<span></span>
</td>
<td class="nump">$ 14,286<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_DesktopServices">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_DesktopServices</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_FeesCommissionsAndOtherRecognizedOverTime">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_FeesCommissionsAndOtherRecognizedOverTime</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_InterestReceivedOnEquipmentFinancing">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_InterestReceivedOnEquipmentFinancing</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_OneTimeFeesCommissionsAndOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_OneTimeFeesCommissionsAndOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_ProductsServicesAndFeesTransferredOverTime">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ProductsServicesAndFeesTransferredOverTime</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_RevenueRecognition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_RevenueRecognition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_SoftwareLicenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_SoftwareLicenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_SubscriptionMaintenanceAndSupport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_SubscriptionMaintenanceAndSupport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_TelecommunicationsServices">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_TelecommunicationsServices</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProfessionalFees">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A fee charged for services from professionals such as doctors, lawyers and accountants. The term is often expanded to include other professions, for example, pharmacists charging to maintain a medicinal profile of a client or customer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (k)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-3<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(2)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfessionalFees</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StatementBusinessSegmentsAxis=cxdo_CloudTelecommunicationsSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_CloudTelecommunicationsSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_SoftwareSolutionsSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_SoftwareSolutionsSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_ReportableSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_ReportableSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue (Details 1) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenue</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="Show.showAR( this, 'defref_us-gaap_OtherReceivables', window );">Receivables, which are included in trade receivables, net of allowance for credit losses</a></td>
<td class="nump">$ 4,060<span></span>
</td>
<td class="nump">$ 4,352<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepositContractsAssets', window );">Contract assets, net of allowance for credit losses</a></td>
<td class="nump">419<span></span>
</td>
<td class="nump">406<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepositContractsLiabilities', window );">Contract liabilities</a></td>
<td class="nump">$ 3,038<span></span>
</td>
<td class="nump">$ 3,372<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_DepositContractsAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount of assets as of the balance sheet date pertaining to amounts paid by the insured (including a ceding company) under insurance or reinsurance contracts for which insurance risk is not transferred.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483081/340-30-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483054/340-30-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepositContractsAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DepositContractsLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount of liabilities as of the balance sheet date pertaining to amounts received by the insurer or reinsurer from the insured (including a ceding company) under insurance or reinsurance contracts for which insurance risk is not transferred.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483081/340-30-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483054/340-30-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepositContractsLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount due from parties in nontrade transactions, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(5)(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RevenuesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue (Details 2) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cxdo_ContractAssetsMember', window );">Contract Assets [Member]</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="Show.showAR( this, 'defref_cxdo_RevenueRecognizedThatWasIncludedInContractLiabilityBalance', window );">Revenue recognized that was included in the contract liability balance at the beginning of the period</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue', window );">Increase due to cash received, excluding amounts recognized as revenue during the period</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_TransferredToReceivablesFromContractAssetsRecognized', window );">Transferred to receivables from contract assets recognized at the beginning of the period</a></td>
<td class="num">(83)<span></span>
</td>
<td class="num">(302)<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="Show.showAR( this, 'defref_cxdo_IncreaseDueToAdditionalUnamortizedDiscounts', window );">Increase due to additional unamortized discounts</a></td>
<td class="nump">96<span></span>
</td>
<td class="nump">366<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cxdo_ContractLiabilitiesMember', window );">Contract Liabilities [Member]</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="Show.showAR( this, 'defref_cxdo_RevenueRecognizedThatWasIncludedInContractLiabilityBalance', window );">Revenue recognized that was included in the contract liability balance at the beginning of the period</a></td>
<td class="num">(1,916)<span></span>
</td>
<td class="num">(3,154)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue', window );">Increase due to cash received, excluding amounts recognized as revenue during the period</a></td>
<td class="nump">1,582<span></span>
</td>
<td class="nump">3,938<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="Show.showAR( this, 'defref_cxdo_TransferredToReceivablesFromContractAssetsRecognized', window );">Transferred to receivables from contract assets recognized at the beginning of the period</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_IncreaseDueToAdditionalUnamortizedDiscounts', window );">Increase due to additional unamortized discounts</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_IncreaseDueToAdditionalUnamortizedDiscounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_IncreaseDueToAdditionalUnamortizedDiscounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_RevenueRecognizedThatWasIncludedInContractLiabilityBalance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_RevenueRecognizedThatWasIncludedInContractLiabilityBalance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_TransferredToReceivablesFromContractAssetsRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_TransferredToReceivablesFromContractAssetsRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FiniteLivedIntangibleAssetsByMajorClassAxis=cxdo_ContractAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_ContractAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_ContractLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_ContractLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue (Details 3) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenue</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="Show.showAR( this, 'defref_cxdo_DepositContractsAssetsGross', window );">Gross contract assets</a></td>
<td class="nump">$ 541<span></span>
</td>
<td class="nump">$ 533<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="Show.showAR( this, 'defref_cxdo_AllowanceforcreditlossesofContractAssets', window );">Less: allowance for credit losses</a></td>
<td class="num">(122)<span></span>
</td>
<td class="num">(127)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepositContractsAssets', window );">Contract assets, net of allowance for credit losses</a></td>
<td class="nump">$ 419<span></span>
</td>
<td class="nump">$ 406<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_AllowanceforcreditlossesofContractAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AllowanceforcreditlossesofContractAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_DepositContractsAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_DepositContractsAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DepositContractsAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount of assets as of the balance sheet date pertaining to amounts paid by the insured (including a ceding company) under insurance or reinsurance contracts for which insurance risk is not transferred.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483081/340-30-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483054/340-30-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DepositContractsAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RevenuesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue (Details 4)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2025 </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="Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenue</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="Show.showAR( this, 'defref_cxdo_AllowancesForCreditLossesOfContractAssets', window );">Opening balance</a></td>
<td class="nump">$ 127<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="Show.showAR( this, 'defref_cxdo_AllowanceForCreditLossesOfContractAssetsProvision', window );">Provision</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs', window );">Write- offs</a></td>
<td class="num">(2)<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="Show.showAR( this, 'defref_cxdo_FinancingReceivableAllowanceForCreditLossesRecoveryOthers', window );">Recoveries and others</a></td>
<td class="num">(3)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_AllowanceForCreditLossesOfContractAssets', window );">Closing balance</a></td>
<td class="nump">$ 122<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_AllowanceForCreditLossesOfContractAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AllowanceForCreditLossesOfContractAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_AllowanceForCreditLossesOfContractAssetsProvision">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AllowanceForCreditLossesOfContractAssetsProvision</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_AllowancesForCreditLossesOfContractAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AllowancesForCreditLossesOfContractAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_FinancingReceivableAllowanceForCreditLossesRecoveryOthers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_FinancingReceivableAllowanceForCreditLossesRecoveryOthers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RevenuesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue (Details 5)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Mar. 31, 2025 </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="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInSecondYear', window );">2025</a></td>
<td class="nump">$ 30,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="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInThirdYear', window );">2026</a></td>
<td class="nump">23,814<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInFourthYear', window );">2027</a></td>
<td class="nump">16,052<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInFifthYear', window );">2028</a></td>
<td class="nump">8,104<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueAfterFifthYear', window );">2029 and thereafter</a></td>
<td class="nump">3,696<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligation', window );">Total</a></td>
<td class="nump">81,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="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cxdo_SoftwareSolutionsMember', window );">Software Solutions [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInSecondYear', window );">2025</a></td>
<td class="nump">11,933<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInThirdYear', window );">2026</a></td>
<td class="nump">7,699<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInFourthYear', window );">2027</a></td>
<td class="nump">4,962<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInFifthYear', window );">2028</a></td>
<td class="nump">1,409<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueAfterFifthYear', window );">2029 and thereafter</a></td>
<td class="nump">1,263<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligation', window );">Total</a></td>
<td class="nump">27,266<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsegmentsAxis=cxdo_TelecommunicationsServicesMember', window );">Telecommunications Services [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInSecondYear', window );">2025</a></td>
<td class="nump">17,729<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInThirdYear', window );">2026</a></td>
<td class="nump">16,115<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInFourthYear', window );">2027</a></td>
<td class="nump">11,090<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInFifthYear', window );">2028</a></td>
<td class="nump">6,695<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueAfterFifthYear', window );">2029 and thereafter</a></td>
<td class="nump">2,433<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligation', window );">Total</a></td>
<td class="nump">54,062<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsegmentsAxis=cxdo_DesktopDevicesMember', window );">Desktop Devices [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInSecondYear', window );">2025</a></td>
<td class="nump">621<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInThirdYear', window );">2026</a></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="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInFourthYear', window );">2027</a></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="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueInFifthYear', window );">2028</a></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="Show.showAR( this, 'defref_us-gaap_PurchaseObligationDueAfterFifthYear', window );">2029 and thereafter</a></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="Show.showAR( this, 'defref_us-gaap_PurchaseObligation', window );">Total</a></td>
<td class="nump">$ 621<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_PurchaseObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Minimum amount of purchase arrangement in which the entity has agreed to expend funds to procure goods or services from a supplier.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PurchaseObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PurchaseObligationDueAfterFifthYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of purchase arrangement to be paid after fifth fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PurchaseObligationDueAfterFifthYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PurchaseObligationDueInFifthYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of purchase arrangement to be paid in fifth fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PurchaseObligationDueInFifthYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PurchaseObligationDueInFourthYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of purchase arrangement to be paid in fourth fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PurchaseObligationDueInFourthYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PurchaseObligationDueInSecondYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of purchase arrangement to be paid in second fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PurchaseObligationDueInSecondYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PurchaseObligationDueInThirdYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of purchase arrangement to be paid in third fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PurchaseObligationDueInThirdYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StatementBusinessSegmentsAxis=cxdo_SoftwareSolutionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_SoftwareSolutionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_SubsegmentsAxis=cxdo_TelecommunicationsServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_SubsegmentsAxis=cxdo_TelecommunicationsServicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_SubsegmentsAxis=cxdo_DesktopDevicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_SubsegmentsAxis=cxdo_DesktopDevicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue (Details Narrative)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenuesAbstract', window );"><strong>Revenue</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="Show.showAR( this, 'defref_cxdo_AllowanceForCreditLossesAsPercentOfGrossContractAssets', window );">Allowance for credit losses as percent of gross contract assets</a></td>
<td class="nump">22.50%<span></span>
</td>
<td class="nump">23.80%<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="Show.showAR( this, 'defref_cxdo_AllowanceForCreditLossesDescriptionOfPeriod', window );">Allowance for credit losses description of period</a></td>
<td class="text">We utilize a five-year lookback period to establish our estimate of expected credit losses, as our contractual terms range from three to five 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_cxdo_AllowanceForCreditLossesAsPercentOfGrossContractAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AllowanceForCreditLossesAsPercentOfGrossContractAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_AllowanceForCreditLossesDescriptionOfPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AllowanceForCreditLossesDescriptionOfPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings Per Common Share (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income/(loss)</a></td>
<td class="nump">$ 1,171<span></span>
</td>
<td class="nump">$ 434<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract', window );"><strong>Weighted-average share reconciliation:</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="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted-average basic shares outstanding (B)</a></td>
<td class="nump">28,024,280<span></span>
</td>
<td class="nump">26,314,903<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="Show.showAR( this, 'defref_cxdo_DilutiveEffectOfStockBasedAwards', window );">Dilutive effect of stock-based awards</a></td>
<td class="nump">3,068,495<span></span>
</td>
<td class="nump">3,827,197<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted-average outstanding shares of common stock (C)</a></td>
<td class="nump">31,092,775<span></span>
</td>
<td class="nump">30,142,100<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic (A/B)</a></td>
<td class="nump">$ 0.04<span></span>
</td>
<td class="nump">$ 0.02<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (A/C)</a></td>
<td class="nump">$ 0.04<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_DilutiveEffectOfStockBasedAwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_DilutiveEffectOfStockBasedAwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-52<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482635/260-10-55-15<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 34: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Earnings Per Common Share (Details 1) - shares<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_StockOptionMember', window );">Stock Options [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Securities excluded from earnings</a></td>
<td class="nump">1,303,571<span></span>
</td>
<td class="nump">1,317,937<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_FinancialInstrumentAxis=us-gaap_StockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_FinancialInstrumentAxis=us-gaap_StockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<FILENAME>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Trade Receivables and Allowance for Credit Losses (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsAndNotesReceivableNetAbstract', window );"><strong>Trade Receivables and Allowance for Credit Losses</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="Show.showAR( this, 'defref_us-gaap_AccountsReceivableGross', window );">Gross trade receivables</a></td>
<td class="nump">$ 4,225<span></span>
</td>
<td class="nump">$ 4,498<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivable', window );">Less: allowance for credit losses</a></td>
<td class="num">(165)<span></span>
</td>
<td class="num">(146)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNet', window );">Trade receivables, net</a></td>
<td class="nump">4,060<span></span>
</td>
<td class="nump">4,352<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NontradeReceivablesCurrent', window );">Current trade receivables, net</a></td>
<td class="nump">4,060<span></span>
</td>
<td class="nump">4,352<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermInvestmentsAndReceivablesNet', window );">Long-term trade receivables, net</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_TradeReceivablesNet', window );">Trade receivables, net</a></td>
<td class="nump">$ 4,060<span></span>
</td>
<td class="nump">$ 4,352<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_TradeReceivablesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_TradeReceivablesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccountsAndNotesReceivableNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsAndNotesReceivableNetAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-13<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccountsReceivableNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477802/946-310-45-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(5)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479196/954-310-45-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AllowanceForDoubtfulAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LongTermInvestmentsAndReceivablesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The total amount of investments that are intended to be held for an extended period of time (longer than one operating cycle) and amount due to the Entity from outside sources, including trade accounts receivable, notes and loans receivable, as well as any other types of receivables, net of allowances established for the purpose of reducing such investments and receivables to an amount that approximates their net realizable value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermInvestmentsAndReceivablesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_NontradeReceivablesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The sum of amounts currently receivable other than from customers. For classified balance sheets, represents the current amount receivable, that is amounts expected to be collected within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NontradeReceivablesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>63
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Trade Receivables and Allowance for Credit Losses (Details 1)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2025 </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="Show.showAR( this, 'defref_us-gaap_AccountsAndNotesReceivableNetAbstract', window );"><strong>Trade Receivables and Allowance for Credit Losses</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="Show.showAR( this, 'defref_us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent', window );">Begaining balance</a></td>
<td class="nump">$ 146<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProvisionForOtherCreditLosses', window );">Provision</a></td>
<td class="nump">48<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_AllowanceForLoansAndLeaseLossesWriteOffs', window );">Write-offs</a></td>
<td class="num">(31)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReinsuranceCostsAndRecoveriesNet', window );">Recoveries and others</a></td>
<td class="nump">2<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent', window );">Ending balance</a></td>
<td class="nump">$ 165<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_AllowanceForLoansAndLeaseLossesWriteOffs">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AllowanceForLoansAndLeaseLossesWriteOffs</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccountsAndNotesReceivableNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsAndNotesReceivableNetAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on net investment in sales-type and direct financing leases, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProvisionForOtherCreditLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense related to credit loss from transactions other than loan and lease transactions.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProvisionForOtherCreditLosses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ReinsuranceCostsAndRecoveriesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of recovery (expense) related to provision for policy benefits and costs incurred for policies assumed and ceded.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479838/944-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReinsuranceCostsAndRecoveriesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>64
<FILENAME>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Trade Receivables and Allowance for Credit Losses (Details Narrative)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsAndNotesReceivableNetAbstract', window );"><strong>Trade Receivables and Allowance for Credit Losses</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="Show.showAR( this, 'defref_cxdo_AccountsPercentageOfAccountsReceivable', window );">Percent of gross accounts receivable</a></td>
<td class="nump">3.90%<span></span>
</td>
<td class="nump">3.30%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_AccountsPercentageOfAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AccountsPercentageOfAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_AccountsAndNotesReceivableNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsAndNotesReceivableNetAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<FILENAME>R53.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Equipment Financing Receivables and Allowance for Credit Losses (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract', window );"><strong>Equipment Financing Receivables and Allowance for Credit Losses</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="Show.showAR( this, 'defref_us-gaap_FinancingReceivableRevolving', window );">Gross equipment financing receivables</a></td>
<td class="nump">$ 5,291<span></span>
</td>
<td class="nump">$ 5,164<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LimitedPartnersCumulativeNetIncome', window );">Less: unearned income</a></td>
<td class="num">(1,504)<span></span>
</td>
<td class="num">(1,492)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_LessAllowanceForCreditLosses', window );">Less: allowance for credit losses</a></td>
<td class="num">(100)<span></span>
</td>
<td class="num">(226)<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="Show.showAR( this, 'defref_cxdo_FinancingReceivableAllowanceForCreditLossEquipment', window );">Equipment financing receivables, net</a></td>
<td class="nump">3,687<span></span>
</td>
<td class="nump">3,446<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ReceivablesNetCurrent', window );">Current equipment financing receivables, net</a></td>
<td class="nump">1,138<span></span>
</td>
<td class="nump">1,049<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermAccountsNotesAndLoansReceivableNetNoncurrent', window );">Long-term equipment financing receivables, net</a></td>
<td class="nump">2,549<span></span>
</td>
<td class="nump">2,397<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_LongTermInvestmentsAndReceivables', window );">Equipment financing receivables, net</a></td>
<td class="nump">$ 3,687<span></span>
</td>
<td class="nump">$ 3,446<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_FinancingReceivableAllowanceForCreditLossEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_FinancingReceivableAllowanceForCreditLossEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_LessAllowanceForCreditLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_LessAllowanceForCreditLosses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_LongTermInvestmentsAndReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_LongTermInvestmentsAndReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinancingReceivableRevolving">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amortized cost of financing receivable that can be withdrawn, repaid, and redrawn.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 79<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479294/326-20-55-79<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancingReceivableRevolving</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LimitedPartnersCumulativeNetIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate cumulative earnings allocated to the limited partners based on the sharing of income or losses between general and limited partners as specified in the partnership agreement, excluding any priority income allocations resulting from incentive distributions or special earnings allocations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 4.F)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LimitedPartnersCumulativeNetIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermAccountsNotesAndLoansReceivableNetNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of accounts and financing receivables, classified as noncurrent. Includes, but is not limited to, notes and loan receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermAccountsNotesAndLoansReceivableNetNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ReceivablesNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The total amount due to the entity within one year of the balance sheet date (or one operating cycle, if longer) from outside sources, including trade accounts receivable, notes and loans receivable, as well as any other types of receivables, net of allowances established for the purpose of reducing such receivables to an amount that approximates their net realizable value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ReceivablesNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Equipment Financing Receivables and Allowance for Credit Losses (Details 1)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2024 </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="Show.showAR( this, 'defref_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract', window );"><strong>Equipment Financing Receivables and Allowance for Credit Losses</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="Show.showAR( this, 'defref_cxdo_GrossEquipmentFinancingReceivablesNexttwelvemonths', window );">2025 remaining</a></td>
<td class="nump">$ 1,416<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="Show.showAR( this, 'defref_cxdo_GrossEquipmentFinancingReceivablesYeartwo', window );">2026</a></td>
<td class="nump">1,579<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_GrossEquipmentFinancingReceivablesYearthree', window );">2027</a></td>
<td class="nump">1,222<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_GrossEquipmentFinancingReceivablesYearFour', window );">2028</a></td>
<td class="nump">748<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_GrossEquipmentFinancingReceivablesYearFive', window );">2029</a></td>
<td class="nump">326<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="Show.showAR( this, 'defref_cxdo_GrossEquipmentFinancingReceivablesAfteryearfive', window );">2030 and thereafter</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_EquipmentFinancingReceivablesDue', window );">Total</a></td>
<td class="nump">$ 5,291<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_EquipmentFinancingReceivablesDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_EquipmentFinancingReceivablesDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_GrossEquipmentFinancingReceivablesAfteryearfive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_GrossEquipmentFinancingReceivablesAfteryearfive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_GrossEquipmentFinancingReceivablesNexttwelvemonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_GrossEquipmentFinancingReceivablesNexttwelvemonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_GrossEquipmentFinancingReceivablesYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_GrossEquipmentFinancingReceivablesYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_GrossEquipmentFinancingReceivablesYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_GrossEquipmentFinancingReceivablesYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_GrossEquipmentFinancingReceivablesYearthree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_GrossEquipmentFinancingReceivablesYearthree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_GrossEquipmentFinancingReceivablesYeartwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_GrossEquipmentFinancingReceivablesYeartwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>67
<FILENAME>R55.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Equipment Financing Receivables and Allowance for Credit Losses (Details 2)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2025 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_AllowanceforcreditlossesofContractAssets', window );">Opening balance</a></td>
<td class="nump">$ 127<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProvisionForOtherCreditLosses', window );">Provision</a></td>
<td class="nump">48<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="Show.showAR( this, 'defref_cxdo_AllowanceforcreditlossesofContractAssets', window );">Closing balance</a></td>
<td class="nump">122<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditLossStatusAxis=cxdo_AllowanceForCreditLossesMember', window );">Allowance for Credit Losses [Member]</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="Show.showAR( this, 'defref_cxdo_AllowanceforcreditlossesofContractAssets', window );">Opening balance</a></td>
<td class="nump">226<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProvisionForOtherCreditLosses', window );">Provision</a></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="Show.showAR( this, 'defref_us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs', window );">Write- offs</a></td>
<td class="num">(8)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery', window );">Recoveries and others</a></td>
<td class="num">(118)<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="Show.showAR( this, 'defref_cxdo_AllowanceforcreditlossesofContractAssets', window );">Closing balance</a></td>
<td class="nump">$ 100<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_AllowanceforcreditlossesofContractAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AllowanceforcreditlossesofContractAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinancingReceivableAllowanceForCreditLossesRecovery">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in allowance for credit loss on financing receivable from recovery.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11B<br> -Subparagraph (c)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-11B<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 79<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479294/326-20-55-79<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinancingReceivableAllowanceForCreditLossesWriteOffs">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of writeoff of financing receivable, charged against allowance for credit loss.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11B<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-11B<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 79<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479294/326-20-55-79<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-6<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProvisionForOtherCreditLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense related to credit loss from transactions other than loan and lease transactions.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProvisionForOtherCreditLosses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CreditLossStatusAxis=cxdo_AllowanceForCreditLossesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_CreditLossStatusAxis=cxdo_AllowanceForCreditLossesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Equipment Financing Receivables and Allowance for Credit Losses (Details 3) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_AgingOfReceivablesDues', window );">Aging of receivables dues</a></td>
<td class="nump">$ 3,687<span></span>
</td>
<td class="nump">$ 3,446<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancingReceivablesPeriodPastDueAxis=us-gaap_FinancingReceivables60To89DaysPastDueMember', window );">Past due amounts 0-90 days [Member]</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="Show.showAR( this, 'defref_cxdo_AgingOfReceivablesAmountDues', window );">Aging of receivables dues</a></td>
<td class="nump">3,677<span></span>
</td>
<td class="nump">3,444<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancingReceivablesPeriodPastDueAxis=us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember', window );">Past due amounts &gt;90 days [Member]</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="Show.showAR( this, 'defref_cxdo_AgingOfReceivablesAmountDues', window );">Aging of receivables dues</a></td>
<td class="nump">$ 10<span></span>
</td>
<td class="nump">$ 2<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_AgingOfReceivablesAmountDues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AgingOfReceivablesAmountDues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_AgingOfReceivablesDues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AgingOfReceivablesDues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinancingReceivablesPeriodPastDueAxis=us-gaap_FinancingReceivables60To89DaysPastDueMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_FinancingReceivablesPeriodPastDueAxis=us-gaap_FinancingReceivables60To89DaysPastDueMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_FinancingReceivablesPeriodPastDueAxis=us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_FinancingReceivablesPeriodPastDueAxis=us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>69
<FILENAME>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Equipment Financing Receivables and Allowance for Credit Losses (Details 4) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDue', window );">Total equipment financing receivables</a></td>
<td class="nump">$ 3,787<span></span>
</td>
<td class="nump">$ 3,672<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs', window );">Current period gross write offs equipment financing receivables</a></td>
<td class="nump">8<span></span>
</td>
<td class="nump">$ 36<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=cxdo_TwoThousendTwentyTwoMember', window );">2022 [Member]</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="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs', window );">Current period gross write offs equipment financing receivables</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=cxdo_TwoThousendTwentyOneMember', window );">2021 [Member]</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="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs', window );">Current period gross write offs equipment financing receivables</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=cxdo_TwoThousendTwentyFiveMember', window );">2025 [Member]</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="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs', window );">Current period gross write offs equipment financing receivables</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=cxdo_TwoThousendTwentyFourMember', window );">2024 [Member]</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="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs', window );">Current period gross write offs equipment financing receivables</a></td>
<td class="nump">6<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="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=cxdo_PriorMember', window );">Prior [Member]</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="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs', window );">Current period gross write offs equipment financing receivables</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=cxdo_TwoThousendTwentyThreeMember', window );">2023 [Member]</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="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs', window );">Current period gross write offs equipment financing receivables</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=cxdo_UnitedStateMember', window );">UNITED STATES [Member] | 2022 [Member]</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="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDue', window );">Total equipment financing receivables</a></td>
<td class="nump">429<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="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=cxdo_UnitedStateMember', window );">UNITED STATES [Member] | 2021 [Member]</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="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDue', window );">Total equipment financing receivables</a></td>
<td class="nump">80<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="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=cxdo_UnitedStateMember', window );">UNITED STATES [Member] | 2025 [Member]</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="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDue', window );">Total equipment financing receivables</a></td>
<td class="nump">418<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="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=cxdo_UnitedStateMember', window );">UNITED STATES [Member] | 2024 [Member]</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="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDue', window );">Total equipment financing receivables</a></td>
<td class="nump">1,749<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="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=cxdo_UnitedStateMember', window );">UNITED STATES [Member] | Prior [Member]</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="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDue', window );">Total equipment financing receivables</a></td>
<td class="nump">40<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="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=cxdo_UnitedStateMember', window );">UNITED STATES [Member] | 2023 [Member]</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="Show.showAR( this, 'defref_cxdo_TotalEquipmentFinancingReceivablesDue', window );">Total equipment financing receivables</a></td>
<td class="nump">$ 1,071<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_cxdo_TotalEquipmentFinancingReceivablesDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_TotalEquipmentFinancingReceivablesDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AwardDateAxis=cxdo_TwoThousendTwentyTwoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_AwardDateAxis=cxdo_TwoThousendTwentyTwoMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AwardDateAxis=cxdo_TwoThousendTwentyOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_AwardDateAxis=cxdo_TwoThousendTwentyOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AwardDateAxis=cxdo_TwoThousendTwentyFiveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_AwardDateAxis=cxdo_TwoThousendTwentyFiveMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AwardDateAxis=cxdo_TwoThousendTwentyFourMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_AwardDateAxis=cxdo_TwoThousendTwentyFourMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AwardDateAxis=cxdo_PriorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_AwardDateAxis=cxdo_PriorMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AwardDateAxis=cxdo_TwoThousendTwentyThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_AwardDateAxis=cxdo_TwoThousendTwentyThreeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=cxdo_UnitedStateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=cxdo_UnitedStateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Equipment Financing Receivables and Allowance for Credit Losses (Details Narrative)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract', window );"><strong>Equipment Financing Receivables and Allowance for Credit Losses</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="Show.showAR( this, 'defref_srt_FinancingReceivableAllowanceForCreditLossToNonaccrualPercent', window );">Allowance for credit losses</a></td>
<td class="nump">2.70%<span></span>
</td>
<td class="nump">6.10%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<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_FinancingReceivableAllowanceForCreditLossToNonaccrualPercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of allowance for credit loss to nonaccrual financing receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Regulation S-K (SK)<br> -Number 229<br> -Section 1405<br> -Paragraph a<br> -Subparagraph (3)<br> -Publisher SEC<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_FinancingReceivableAllowanceForCreditLossToNonaccrualPercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>srt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Prepaid Expenses (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsAbstract', window );"><strong>Prepaid Expenses</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="Show.showAR( this, 'defref_us-gaap_PrepaidInsurance', window );">Prepaid corporate insurance</a></td>
<td class="nump">$ 32<span></span>
</td>
<td class="nump">$ 88<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="Show.showAR( this, 'defref_cxdo_PrepaidSoftwareServices', window );">Prepaid software services and support</a></td>
<td class="nump">485<span></span>
</td>
<td class="nump">455<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidReinsurancePremiums', window );">Prepaid employee insurance premiums</a></td>
<td class="nump">202<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="Show.showAR( this, 'defref_cxdo_PrepaidNasdaqListingFee', window );">Prepaid nasdaq listing fee</a></td>
<td class="nump">53<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_PrepaidexpensesForUserGroupMeeting', window );">User group meeting fees</a></td>
<td class="nump">103<span></span>
</td>
<td class="nump">86<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedRentCurrent', window );">Prepaid rent</a></td>
<td class="nump">28<span></span>
</td>
<td class="nump">103<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherPrepaidExpenseCurrent', window );">Other prepaid expenses</a></td>
<td class="nump">90<span></span>
</td>
<td class="nump">144<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssets', window );">Total prepaid expenses</a></td>
<td class="nump">$ 993<span></span>
</td>
<td class="nump">$ 876<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_PrepaidNasdaqListingFee">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_PrepaidNasdaqListingFee</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_PrepaidSoftwareServices">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_PrepaidSoftwareServices</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_PrepaidexpensesForUserGroupMeeting">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_PrepaidexpensesForUserGroupMeeting</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccruedRentCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for contractual rent under lease arrangements. 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 8<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedRentCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherPrepaidExpenseCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for other 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483032/340-10-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherPrepaidExpenseCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PrepaidExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PrepaidExpenseAndOtherAssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseAndOtherAssetsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidInsurance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for insurance that provides economic benefits within a future period of one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483032/340-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482955/340-10-05-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidInsurance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PrepaidReinsurancePremiums">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The unexpired portion of premiums ceded on policies in force as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 825<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477351/944-825-50-1B<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 340<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479510/944-340-25-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidReinsurancePremiums</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>72
<FILENAME>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Property and Equipment (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less: Accumulated Depreciation</a></td>
<td class="num">$ (2,593)<span></span>
</td>
<td class="num">$ (2,528)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Total Property And Equipment, Net</a></td>
<td class="nump">329<span></span>
</td>
<td class="nump">394<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember', window );">Computer and Office Equipment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property And Equipment, Gross</a></td>
<td class="nump">2,142<span></span>
</td>
<td class="nump">2,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="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cxdo_ComputerSoftwareIntangibleAssetsMember', window );">Computer Software [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property And Equipment, Gross</a></td>
<td class="nump">589<span></span>
</td>
<td class="nump">589<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cxdo_InternalUseComputerSoftwareMember', window );">Internal-use Software [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property And Equipment, Gross</a></td>
<td class="nump">14<span></span>
</td>
<td class="nump">14<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember', window );">Leasehold Improvements [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property And Equipment, Gross</a></td>
<td class="nump">34<span></span>
</td>
<td class="nump">34<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember', window );">Vehicles [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property And Equipment, Gross</a></td>
<td class="nump">$ 143<span></span>
</td>
<td class="nump">$ 143<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478451/942-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_OfficeEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_OfficeEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_ComputerSoftwareIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_ComputerSoftwareIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_InternalUseComputerSoftwareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_InternalUseComputerSoftwareMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_LeaseholdImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_LeaseholdImprovementsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_VehiclesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_VehiclesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Property and Equipment (Details Narrative) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_PropertyAndEquipmentAbstract', window );"><strong>Property 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="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation expense included in general and administrative expenses</a></td>
<td class="nump">$ 65<span></span>
</td>
<td class="nump">$ 80<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_PropertyAndEquipmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_PropertyAndEquipmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Intangible Assets and Goodwill (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Carrying Amount Of Intangible, Net</a></td>
<td class="nump">$ 19,822,000<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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember', window );">Customer Relationships</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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Carrying Amount Of Intangible, Gross</a></td>
<td class="nump">26,073,000<span></span>
</td>
<td class="nump">$ 26,073,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Less: Accumulated Amortization</a></td>
<td class="num">(7,904,000)<span></span>
</td>
<td class="num">(7,403,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Carrying Amount Of Intangible, Net</a></td>
<td class="nump">18,169,000<span></span>
</td>
<td class="nump">18,670,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cxdo_DevelopedTechnologiesMember', window );">Developed Technologies</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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Carrying Amount Of Intangible, Gross</a></td>
<td class="nump">4,900,000<span></span>
</td>
<td class="nump">4,900,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Less: Accumulated Amortization</a></td>
<td class="num">(3,263,000)<span></span>
</td>
<td class="num">(3,081,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Carrying Amount Of Intangible, Net</a></td>
<td class="nump">1,637,000<span></span>
</td>
<td class="nump">1,819,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cxdo_TrademarkAndTradeNamesMember', window );">Trademark and trade names [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Carrying Amount Of Intangible, Gross</a></td>
<td class="nump">400,000<span></span>
</td>
<td class="nump">400,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Less: Accumulated Amortization</a></td>
<td class="num">(384,000)<span></span>
</td>
<td class="num">(361,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Carrying Amount Of Intangible, Net</a></td>
<td class="nump">16,000<span></span>
</td>
<td class="nump">39,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cxdo_TotalacquiredintangibleassetsMember', window );">Total acquired intangible assets [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Carrying Amount Of Intangible, Gross</a></td>
<td class="nump">31,373,000<span></span>
</td>
<td class="nump">31,373,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Less: Accumulated Amortization</a></td>
<td class="num">(11,551,000)<span></span>
</td>
<td class="num">(10,845,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Carrying Amount Of Intangible, Net</a></td>
<td class="nump">$ 19,822,000<span></span>
</td>
<td class="nump">$ 20,528,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_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480265/350-10-S45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480265/350-10-S45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 928<br> -SubTopic 340<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478859/928-340-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483154/926-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_CustomerRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_DevelopedTechnologiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_DevelopedTechnologiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_TrademarkAndTradeNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_TrademarkAndTradeNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_TotalacquiredintangibleassetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_TotalacquiredintangibleassetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>75
<FILENAME>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Intangible Assets and Goodwill (Details 1)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Mar. 31, 2025 </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="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Intangible Assets and Goodwill</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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2025</a></td>
<td class="nump">$ 2,064<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2026</a></td>
<td class="nump">2,457<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2027</a></td>
<td class="nump">2,202<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2028</a></td>
<td class="nump">1,637<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">2029</a></td>
<td class="nump">1,557<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">2030 and thereafter</a></td>
<td class="nump">9,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="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Total</a></td>
<td class="nump">$ 19,822<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483154/926-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>76
<FILENAME>R64.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets and Goodwill (Details 2) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Intangible Assets and 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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_GoodwillBeginningBalance', window );">Goodwill, beginning balance</a></td>
<td class="nump">$ 9,454,000<span></span>
</td>
<td class="nump">$ 9,454,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_GoodwillAdditions', window );">Additions</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_GoodwillEndingBalance', window );">Goodwill, ending balance</a></td>
<td class="nump">$ 9,454,000<span></span>
</td>
<td class="nump">$ 9,454,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_GoodwillAdditions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_GoodwillAdditions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_GoodwillBeginningBalance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_GoodwillBeginningBalance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_GoodwillEndingBalance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_GoodwillEndingBalance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>77
<FILENAME>R65.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets and Goodwill (Details Narrative) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_DevelopedTechnologies', window );">Developed Technologies</a></td>
<td class="text">2 years 2 months 12 days<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="Show.showAR( this, 'defref_cxdo_TrademarksAndTradeNames', window );">Trademarks And Trade Names</a></td>
<td class="text">2 months 12 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted Average Remaining Useful Life For Customer Relationships</a></td>
<td class="text">12 years 1 month 6 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="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember', window );">Selling and Marketing</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="Show.showAR( this, 'defref_cxdo_AmortizationOfIntangibleAssetsCustomerRelationships', window );">Amortization of Intangible Assets, Customer Relationships</a></td>
<td class="nump">$ 501<span></span>
</td>
<td class="nump">$ 527<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember', window );">General and Administrative</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="Show.showAR( this, 'defref_cxdo_AmortizationOfIntangibleAssetsTrademarksAndTradeNames', window );">Amortization of Intangible Assets, Trademarks and Trade Names</a></td>
<td class="nump">23<span></span>
</td>
<td class="nump">30<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=cxdo_SoftwareSolutionsRevenueMember', window );">Software Solutions Revenue</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="Show.showAR( this, 'defref_cxdo_AmortizationOfIntangibleAssetsDevelopedTechnology', window );">Amortization of Intangible Assets, Developed Technology</a></td>
<td class="nump">$ 182<span></span>
</td>
<td class="nump">$ 203<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_AmortizationOfIntangibleAssetsCustomerRelationships">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AmortizationOfIntangibleAssetsCustomerRelationships</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_AmortizationOfIntangibleAssetsDevelopedTechnology">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AmortizationOfIntangibleAssetsDevelopedTechnology</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_AmortizationOfIntangibleAssetsTrademarksAndTradeNames">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AmortizationOfIntangibleAssetsTrademarksAndTradeNames</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_DevelopedTechnologies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_DevelopedTechnologies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_TrademarksAndTradeNames">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_TrademarksAndTradeNames</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 985<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481283/985-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_SellingAndMarketingExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_GeneralAndAdministrativeExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_GeneralAndAdministrativeExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_SoftwareSolutionsRevenueMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_SoftwareSolutionsRevenueMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>78
<FILENAME>R66.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Accrued Expenses (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PayablesAndAccrualsAbstract', window );"><strong>Accrued Expenses</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="Show.showAR( this, 'defref_us-gaap_EmployeeRelatedLiabilitiesCurrent', window );">Accrued Wages And Benefits</a></td>
<td class="nump">$ 2,045<span></span>
</td>
<td class="nump">$ 2,828<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="Show.showAR( this, 'defref_cxdo_AccruedAccountsPayable', window );">Accrued Accounts Payable</a></td>
<td class="nump">1,915<span></span>
</td>
<td class="nump">1,579<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SalesAndExciseTaxPayableCurrent', window );">Accrued Sales And Telecommunications Taxes</a></td>
<td class="nump">1,839<span></span>
</td>
<td class="nump">1,837<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="Show.showAR( this, 'defref_cxdo_ProductWarrantyAccrual1', window );">Product Warranty Liability</a></td>
<td class="nump">31<span></span>
</td>
<td class="nump">32<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_CloudComputingArrangements', window );">Cloud computing arrangements</a></td>
<td class="nump">153<span></span>
</td>
<td class="nump">279<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="Show.showAR( this, 'defref_cxdo_CreditCards', window );">Credit cards</a></td>
<td class="nump">104<span></span>
</td>
<td class="nump">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="Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesCurrent', window );">Other</a></td>
<td class="nump">352<span></span>
</td>
<td class="nump">320<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent', window );">Total accrued expenses</a></td>
<td class="nump">$ 6,439<span></span>
</td>
<td class="nump">$ 6,992<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_AccruedAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AccruedAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_CloudComputingArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_CloudComputingArrangements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_CreditCards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_CreditCards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_ProductWarrantyAccrual1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ProductWarrantyAccrual1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeRelatedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses incurred but not yet paid classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SalesAndExciseTaxPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred through that date and payable for statutory sales and use taxes, including value added tax. 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SalesAndExciseTaxPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>79
<FILENAME>R67.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Expenses (Details 1) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PayablesAndAccrualsAbstract', window );"><strong>Accrued Expenses</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="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrual', window );">Beginning Balance</a></td>
<td class="nump">$ 32<span></span>
</td>
<td class="nump">$ 25<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="Show.showAR( this, 'defref_cxdo_ProductWarrantiesAccrualPeriodIncreaseDecrease', window );">Accrual For Warranties</a></td>
<td class="nump">6<span></span>
</td>
<td class="nump">32<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentOfWarrantsGrantedForServices', window );">Adjustments Related To Pre-existing Warranties</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(4)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualPayments', window );">Warranty Settlements</a></td>
<td class="num">(7)<span></span>
</td>
<td class="num">(21)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrual', window );">Ending Balance</a></td>
<td class="nump">$ 31<span></span>
</td>
<td class="nump">$ 32<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_ProductWarrantiesAccrualPeriodIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ProductWarrantiesAccrualPeriodIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AdjustmentOfWarrantsGrantedForServices">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Adjustment for noncash service expenses paid for by granting of warrants.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentOfWarrantsGrantedForServices</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrualPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Accrued Expenses (Details Narrative) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PayablesAndAccrualsAbstract', window );"><strong>Accrued Expenses</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="Show.showAR( this, 'defref_us-gaap_ProductWarrantyExpense', window );">Product Warranty Expense</a></td>
<td class="nump">$ 6<span></span>
</td>
<td class="nump">$ 7<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The expense charged against earnings for the period pertaining to standard and extended warranties on the entity's goods and services granted to customers.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>81
<FILENAME>R69.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Notes Payable (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Notes Payable</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="Show.showAR( this, 'defref_cxdo_NotesPayableRelatedPartyClassifiedCurrent', window );">Related party note payable</a></td>
<td class="nump">$ 384<span></span>
</td>
<td class="nump">$ 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="Show.showAR( this, 'defref_us-gaap_OtherNotesPayable', window );">Other note payable</a></td>
<td class="nump">91<span></span>
</td>
<td class="nump">114<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NotesPayable', window );">Notes Payable</a></td>
<td class="nump">475<span></span>
</td>
<td class="nump">592<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NotesPayableCurrent', window );">Less: Current Notes Payable</a></td>
<td class="num">(475)<span></span>
</td>
<td class="num">(478)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SecuredLongTermDebt', window );">Notes Payable, Net Of Current Portion</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 114<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_NotesPayableRelatedPartyClassifiedCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_NotesPayableRelatedPartyClassifiedCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Including the current and noncurrent portions, aggregate carrying amount of all types of notes payable, as of the balance sheet date, with initial maturities beyond one year or beyond the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_NotesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying values as of the balance sheet date of the portions of long-term notes payable due within one year or the operating cycle if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NotesPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term notes payable classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_SecuredLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount of collateralized debt obligations with maturities initially due after one year or beyond the operating cycle, if longer, excluding the current portion. Obligations include, but not limited to, mortgage loans, chattel loans, and other borrowings secured by assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SecuredLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>82
<FILENAME>R70.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Notes Payable (Details 1)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Mar. 31, 2025 </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="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>Notes Payable</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="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths', window );">2025 remaining</a></td>
<td class="nump">$ 361<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo', window );">2026</a></td>
<td class="nump">114<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree', window );">2027</a></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="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour', window );">2028</a></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="Show.showAR( this, 'defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive', window );">2029</a></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="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Total</a></td>
<td class="nump">$ 475<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482949/835-30-55-8<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69B<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69C<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1D<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.12-04(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1E<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1E<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Notes Payable (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Nov. 01, 2022</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_NotesPayableRelatedPartyClassifiedCurrent', window );">Related party note payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 384,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 478,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="Show.showAR( this, 'defref_us-gaap_AwardDateAxis=cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember', window );">On February 27, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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="Show.showAR( this, 'defref_cxdo_AgreementTerm', window );">Agreement Term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_PromissoryNote', window );">Promissory note</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 278,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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateDuringPeriod', window );">Interest Rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6.58%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRestructuring', window );">Quartely Payment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 85,430<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="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionAxis=cxdo_AllegiantNetworksBusinessAcquisitionMember', window );">Allegiant Networks business acquisition [Member] | November 1 2022 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_NotesPayableRelatedPartyClassifiedCurrent', window );">Related party note payable</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">384,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 478,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_AgreementTerm', window );">Agreement Term</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="Show.showAR( this, 'defref_cxdo_PromissoryNote', window );">Promissory note</a></td>
<td class="nump">$ 1,100,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="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateDuringPeriod', window );">Interest Rate</a></td>
<td class="nump">4.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" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRestructuring', window );">Quartely Payment</a></td>
<td class="nump">$ 983,810<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentPeriodicPaymentPrincipal', window );">Principal amount paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">940<span></span>
</td>
<td class="nump">$ 900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestPaid', window );">Interest paid</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 40<span></span>
</td>
<td class="nump">$ 80<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_cxdo_AgreementTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AgreementTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_NotesPayableRelatedPartyClassifiedCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_NotesPayableRelatedPartyClassifiedCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_PromissoryNote">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_PromissoryNote</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentInterestRateDuringPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average effective interest rate during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateDuringPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentPeriodicPaymentPrincipal">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the required periodic payments applied to principal.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentPeriodicPaymentPrincipal</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InterestPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash paid for interest, including, but not limited to, capitalized interest and payment to settle zero-coupon bond attributable to accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount; classified as operating and investing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForRestructuring">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash payments made as the result of exit or disposal activities. Excludes payments associated with a discontinued operation or an asset retirement obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482017/420-10-50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForRestructuring</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardDateAxis=cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_AwardDateAxis=cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_AllegiantNetworksBusinessAcquisitionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_AllegiantNetworksBusinessAcquisitionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AwardDateAxis=cxdo_NovemberOneTwoThousandTwentyTwoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_AwardDateAxis=cxdo_NovemberOneTwoThousandTwentyTwoMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>84
<FILENAME>R72.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Line of Credit (Details Narrative)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2025 </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="Show.showAR( this, 'defref_cxdo_LineOfCreditAbstract', window );"><strong>Line of Credit</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="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding', window );">Outstanding balance</a></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="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod', window );">Line of credit with a maximum principal amount</a></td>
<td class="nump">$ 700<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityExpirationDate1', window );">Line of credit expiry term</a></td>
<td class="text">Feb. 27,  2026<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityInterestRateDuringPeriod', window );">Line of credit bears interest rate</a></td>
<td class="nump">0.50%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity', window );">Remaining available for borrowing</a></td>
<td class="nump">$ 700<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_LineOfCreditAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_LineOfCreditAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityExpirationDate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Date the credit facility terminates, in YYYY-MM-DD format.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityExpirationDate1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of the amount outstanding under the credit facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LineOfCreditFacilityInterestRateDuringPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The effective interest rate during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityInterestRateDuringPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Maximum amount borrowed under the credit facility at any time during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LineOfCreditFacilityRemainingBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value Measurements (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=cxdo_CarryingReportedAmountsFairValueDisclosureMember', window );">Carrying Value</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="Show.showAR( this, 'defref_us-gaap_AccountsReceivableFairValueDisclosure', window );">Trade Receivables, Net</a></td>
<td class="nump">$ 4,060<span></span>
</td>
<td class="nump">$ 4,352<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="Show.showAR( this, 'defref_cxdo_EquipmentFinancingReceivableFairValueDisclosure', window );">Equipment Financing Receivables</a></td>
<td class="nump">3,687<span></span>
</td>
<td class="nump">3,446<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_FinanceLeasesFairValueDisclosure', window );">Finance lease obligations</a></td>
<td class="nump">4<span></span>
</td>
<td class="nump">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="Show.showAR( this, 'defref_us-gaap_NotesPayableFairValueDisclosure', window );">Notes Payable</a></td>
<td class="nump">475<span></span>
</td>
<td class="nump">592<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=cxdo_EstimateOfFairValueFairValueDisclosuresMember', window );">Estimated Fair Value</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="Show.showAR( this, 'defref_us-gaap_AccountsReceivableFairValueDisclosure', window );">Trade Receivables, Net</a></td>
<td class="nump">4,060<span></span>
</td>
<td class="nump">4,352<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_EquipmentFinancingReceivableFairValueDisclosure', window );">Equipment Financing Receivables</a></td>
<td class="nump">3,687<span></span>
</td>
<td class="nump">3,446<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="Show.showAR( this, 'defref_cxdo_FinanceLeasesFairValueDisclosure', window );">Finance lease obligations</a></td>
<td class="nump">4<span></span>
</td>
<td class="nump">23<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NotesPayableFairValueDisclosure', window );">Notes Payable</a></td>
<td class="nump">$ 472<span></span>
</td>
<td class="nump">$ 587<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_EquipmentFinancingReceivableFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_EquipmentFinancingReceivableFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_FinanceLeasesFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_FinanceLeasesFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccountsReceivableFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value portion of amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_NotesPayableFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value portion of notes payable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2E<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NotesPayableFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PlanNameAxis=cxdo_CarryingReportedAmountsFairValueDisclosureMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=cxdo_CarryingReportedAmountsFairValueDisclosureMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=cxdo_EstimateOfFairValueFairValueDisclosuresMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=cxdo_EstimateOfFairValueFairValueDisclosuresMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>86
<FILENAME>R74.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Details Narrative) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Taxes</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="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Effective income tax rate</a></td>
<td class="nump">3.60%<span></span>
</td>
<td class="nump">5.80%<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="Show.showAR( this, 'defref_cxdo_DeferredTaxAssetValuationAllowance', window );">Valuation allowance</a></td>
<td class="nump">$ 5,417,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,417,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_DeferredTaxesRealizableAmount', window );">Deferred taxes, realizable amount</a></td>
<td class="nump">5,417,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,417,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_IncomeTaxBenefitProvisions', window );">Income tax benefit/(provision)</a></td>
<td class="num">$ (44,000)<span></span>
</td>
<td class="num">$ (27,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_cxdo_DeferredTaxAssetValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_DeferredTaxAssetValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_DeferredTaxesRealizableAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_DeferredTaxesRealizableAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_IncomeTaxBenefitProvisions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_IncomeTaxBenefitProvisions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>87
<FILENAME>R75.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract', window );"><strong>Operating Leases</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="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2025</a></td>
<td class="nump">$ 479<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2026</a></td>
<td class="nump">555<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2027</a></td>
<td class="nump">458<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2028</a></td>
<td class="nump">62<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">2029</a></td>
<td class="nump">41<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total Minimum Lease Payment</a></td>
<td class="nump">1,595<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less: Amount Representing Interest</a></td>
<td class="num">(163)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Present Value Of Minimum Lease Payments</a></td>
<td class="nump">1,432<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract', window );"><strong>Finance Leases</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="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2025</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="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo', window );">2026</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree', window );">2027</a></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="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour', window );">2028</a></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="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive', window );">2029</a></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="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDue', window );">Total Minimum Lease Payment</a></td>
<td class="nump">4<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount', window );">Less: Amount Representing Interest</a></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="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Present Value Of Minimum Lease Payments</a></td>
<td class="nump">$ 4<span></span>
</td>
<td class="nump">$ 23<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_FinanceLeaseLiabilitiesPaymentsDueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments for finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityPaymentsDueYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for finance 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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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 finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>88
<FILENAME>R76.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Details 1)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases</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="Show.showAR( this, 'defref_cxdo_OperatingLeaseWeightedAverageRemainingLeaseTerm', window );">Weighted-average Remaining Lease Term - Operating Leases</a></td>
<td class="text">2 years 10 months 24 days<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="Show.showAR( this, 'defref_cxdo_FinanceLeaseWeightedAverageRemainingLeaseTerm', window );">Weighted-average Remaining Lease Term - Finance Leases</a></td>
<td class="text">1 year 8 months 12 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Weighted-average Discount Rate - Operating Leases</a></td>
<td class="nump">7.60%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent', window );">Weighted-average Discount Rate- Finance Leases</a></td>
<td class="nump">15.70%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_FinanceLeaseWeightedAverageRemainingLeaseTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_FinanceLeaseWeightedAverageRemainingLeaseTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_OperatingLeaseWeightedAverageRemainingLeaseTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_OperatingLeaseWeightedAverageRemainingLeaseTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_FinanceLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for finance lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Details 2) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases</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="Show.showAR( this, 'defref_cxdo_OperatingCashFlowsFromOperatingLeases', window );">Operating Cash Flows From Operating Leases</a></td>
<td class="nump">$ 128<span></span>
</td>
<td class="nump">$ 213<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="Show.showAR( this, 'defref_cxdo_OperatingCashFlowsFromFinanceLeases', window );">Operating Cash Flows From Finance Leases</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_FinancingCashFlowsFromFinanceLeases', window );">Financing Cash Flows From Finance Leases</a></td>
<td class="num">(19)<span></span>
</td>
<td class="num">(18)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoncashInvestingAndFinancingItemsAbstract', window );"><strong>Non-cash investing and financing activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability', window );">Additions to ROU assets obtained from New operating lease liabilities</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="Show.showAR( this, 'defref_us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability', window );">Additions to ROU assets obtained from New finance lease liabilities</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_FinancingCashFlowsFromFinanceLeases">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_FinancingCashFlowsFromFinanceLeases</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_OperatingCashFlowsFromFinanceLeases">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_OperatingCashFlowsFromFinanceLeases</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_OperatingCashFlowsFromOperatingLeases">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_OperatingCashFlowsFromOperatingLeases</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NoncashInvestingAndFinancingItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoncashInvestingAndFinancingItemsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in right-of-use asset obtained in exchange for finance lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>90
<FILENAME>R78.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Details Narrative) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Finance lease</a></td>
<td class="nump">$ 4<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 23<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment', window );">Assets classified as property and equipment under finance lease obligations</a></td>
<td class="nump">486<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">486<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentOwnedAccumulatedDepreciation', window );">Related accumulated depreciation</a></td>
<td class="nump">419<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 403<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherExpenses', window );">Prepaid expense</a></td>
<td class="nump">40<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="Show.showAR( this, 'defref_cxdo_AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses', window );">Amortization Expense Included In General And Administrative Expenses</a></td>
<td class="nump">23<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestExpenseDebt', window );">Interest Expense</a></td>
<td class="nump">$ 0<span></span>
</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="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=cxdo_BottomMember', window );">Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_InterestRateFinanceLeases', window );">Interest Rate- Finance Leases</a></td>
<td class="nump">1.37%<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="Show.showAR( this, 'defref_us-gaap_GeographicDistributionAxis=cxdo_TempeArizoneMember', window );">Tempe Arizona [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Rental Expense Incurred On Operating Leases</a></td>
<td class="nump">$ 14<span></span>
</td>
<td class="nump">78<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="Show.showAR( this, 'defref_cxdo_DescriptionOfleaseExpiryDate', window );">Description Of lease Expiry Date</a></td>
<td class="text">operating lease agreement that expired in January 2025<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="Show.showAR( this, 'defref_cxdo_IncrementalBorrowingRate', window );">Incremental borrowing rate</a></td>
<td class="nump">6.58%<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="Show.showAR( this, 'defref_us-gaap_GeographicDistributionAxis=cxdo_TempeArizoneMember', window );">Tempe Arizona [Member] | October, 2024 [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Rental Expense Incurred On Operating Leases</a></td>
<td class="nump">$ 80<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="Show.showAR( this, 'defref_cxdo_InterestExpenseOnMonthlyRentDepositLiabilitiesDescription', window );">Monthly rent description</a></td>
<td class="text">October 1, 2024 &#8211; September 30, 2025, $28; October 1, 2025 &#8211; September 30, 2026, $29, and October 1, 2026 &#8211; October 31, 2027, $30<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="Show.showAR( this, 'defref_cxdo_OperatingCostsAndExpencesDescription', window );">Operating Costs description</a></td>
<td class="text">Operating Costs exceed $20 in a calendar year, then the Company shall be responsible for fifty (50%) percent of the amount exceeding $20<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="Show.showAR( this, 'defref_us-gaap_GeographicDistributionAxis=cxdo_RestonVirginiaMember', window );">Reston, Virginia [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Rental Expense Incurred On Operating Leases</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">13<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="Show.showAR( this, 'defref_cxdo_DescriptionOfleaseExpiryDate', window );">Description Of lease Expiry Date</a></td>
<td class="text">operating lease agreement that expired in October 2024<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="Show.showAR( this, 'defref_us-gaap_GeographicDistributionAxis=cxdo_SanDiegoCaliforniaMember', window );">San Diego, California [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Rental Expense Incurred On Operating Leases</a></td>
<td class="nump">$ 22<span></span>
</td>
<td class="nump">22<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="Show.showAR( this, 'defref_cxdo_DescriptionOfleaseExpiryDate', window );">Description Of lease Expiry Date</a></td>
<td class="text">operating lease agreement that expires in 2025<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="Show.showAR( this, 'defref_us-gaap_GeographicDistributionAxis=cxdo_OverlandParkKansasMember', window );">Overland Park, Kansas [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Rental Expense Incurred On Operating Leases</a></td>
<td class="nump">$ 41<span></span>
</td>
<td class="nump">51<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="Show.showAR( this, 'defref_cxdo_DescriptionOfleaseExpiryDate', window );">Description Of lease Expiry Date</a></td>
<td class="text">operating lease agreement that expires in 2027<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="Show.showAR( this, 'defref_us-gaap_GeographicDistributionAxis=cxdo_MichiganLasVegasMember', window );">Michigan Las Vegas Member</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Rental Expense Incurred On Operating Leases</a></td>
<td class="nump">$ 144<span></span>
</td>
<td class="nump">114<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="Show.showAR( this, 'defref_cxdo_DescriptionOfleaseExpiryDate', window );">Description Of lease Expiry Date</a></td>
<td class="text">operating lease agreements that expire on various dates through 2029<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="Show.showAR( this, 'defref_us-gaap_GeographicDistributionAxis=cxdo_OtherOperatingLeasesMember', window );">Other Operating Leases [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_DescriptionOfleaseExpiryDate', window );">Description Of lease Expiry Date</a></td>
<td class="text">The leases expire on various dates through 2027 and the interest rates range from 2.81% to 15.74%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostsAndExpenses', window );">Cost of product</a></td>
<td class="nump">$ 18<span></span>
</td>
<td class="nump">$ 21<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="Show.showAR( this, 'defref_srt_RestatementAxis=srt_ScenarioPreviouslyReportedMember', window );">As Previously Reported [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_InterestRateFinanceLeases', window );">Interest Rate- Finance Leases</a></td>
<td class="nump">15.74%<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_cxdo_AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_cxdo_DescriptionOfleaseExpiryDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_DescriptionOfleaseExpiryDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_IncrementalBorrowingRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_IncrementalBorrowingRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_InterestExpenseOnMonthlyRentDepositLiabilitiesDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_InterestExpenseOnMonthlyRentDepositLiabilitiesDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_InterestRateFinanceLeases">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_InterestRateFinanceLeases</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</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_cxdo_OperatingCostsAndExpencesDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_OperatingCostsAndExpencesDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of property, plant, and equipment recognized as of the acquisition date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 10<br> -Section 55<br> -Paragraph 37<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479303/805-10-55-37<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 805<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479907/805-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CostsAndExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total costs of sales and operating expenses for the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostsAndExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InterestExpenseDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense for debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69E<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69E<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69F<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481568/470-20-55-69F<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1F<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpenseDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OperatingLeaseExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of operating lease expense. Excludes sublease income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PropertyPlantAndEquipmentOwnedAccumulatedDepreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation from long-lived, depreciable flight asset owned. Excludes right-of-use asset from finance lease for flight asset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentOwnedAccumulatedDepreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PlanNameAxis=cxdo_BottomMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=cxdo_BottomMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_GeographicDistributionAxis=cxdo_TempeArizoneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_GeographicDistributionAxis=cxdo_TempeArizoneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AwardDateAxis=cxdo_OctoberTwoThousandTwentyFourMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_AwardDateAxis=cxdo_OctoberTwoThousandTwentyFourMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_GeographicDistributionAxis=cxdo_RestonVirginiaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_GeographicDistributionAxis=cxdo_RestonVirginiaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_GeographicDistributionAxis=cxdo_SanDiegoCaliforniaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_GeographicDistributionAxis=cxdo_SanDiegoCaliforniaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_GeographicDistributionAxis=cxdo_OverlandParkKansasMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_GeographicDistributionAxis=cxdo_OverlandParkKansasMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_GeographicDistributionAxis=cxdo_MichiganLasVegasMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_GeographicDistributionAxis=cxdo_MichiganLasVegasMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_GeographicDistributionAxis=cxdo_OtherOperatingLeasesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_GeographicDistributionAxis=cxdo_OtherOperatingLeasesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_RestatementAxis=srt_ScenarioPreviouslyReportedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_RestatementAxis=srt_ScenarioPreviouslyReportedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitments and Contingencies (Details Narrative) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Feb. 29, 2024</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligation', window );">Purchase obligation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 81,949<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=cxdo_OracleMemberMember', window );">Oracle [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseObligation', window );">Purchase obligation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_ServiceContractAmount', window );">Non cancellable service contract amount</a></td>
<td class="nump">$ 5,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccretionExpense', window );">Accrued expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 81<span></span>
</td>
<td class="nump">$ 234<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_DescriptionRelatedToNoncancellableServiceContractFutureAmount', window );">Description related to noncancellable service contract</a></td>
<td class="text">Under this agreement, $340 remains due during fiscal year 2025, $1.1 million will be due during fiscal 2026, $1.4 million will be due during fiscal 2027, $1.7 million will be due during fiscal 2028, and $456 will be due during fiscal 2029<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="Show.showAR( this, 'defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=cxdo_BoardOfDirectorsMember', window );">Board Of Directors [Member] | December 31 2024 [Member] | Bonus Plan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cxdo_BonusDescription', window );">Bonus description</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">the Compensation Committee of the Board of Directors of the Company (the &#8220;Board&#8221;) has established a bonus pool of $990, for our NEOs and executive management team for the year ending December 31, 2025. The Board established a bonus pool of $350 for our non-executive employees, for the year ending December 31, 2025<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="Show.showAR( this, 'defref_cxdo_BonusAwardDescription', window );">Bonus Award Description</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">Bonus awards for NEOs and executive management will be weighted 50% on annual revenue and 50% on Adjusted EBITDA. No bonus will be awarded for any performance target for which actual performance is less than 90% of target. At 90% or greater actual performance relative to the target, 50% of the weighted bonus amount for the performance target is payable. From 90% to 100% actual performance relative to the target, the remaining 50% of the weighted bonus amount is awarded pro rata with the percentage of actual performance exceeding 90% of target (i.e., each 1% excess over 90% of performance target equals 5% of the weighted bonus amount payable). If actual performance reaches 110% of performance target or greater for any individual performance target, then an additional 10% of the amount apportioned to that performance target will be payable as an additional bonus<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccretionExpense', window );">Accrued expenses</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 335<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_cxdo_BonusAwardDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_BonusAwardDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_BonusDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_BonusDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_DescriptionRelatedToNoncancellableServiceContractFutureAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_DescriptionRelatedToNoncancellableServiceContractFutureAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cxdo_ServiceContractAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cxdo_ServiceContractAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cxdo_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccretionExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount recognized for the passage of time, typically for liabilities, that have been discounted to their net present values. Excludes accretion associated with asset retirement obligations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481639/420-10-35-4<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482017/420-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccretionExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PurchaseObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Minimum amount of purchase arrangement in which the entity has agreed to expend funds to procure goods or services from a supplier.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PurchaseObligation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RelatedPartyTransactionsByRelatedPartyAxis=cxdo_OracleMemberMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=cxdo_OracleMemberMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=cxdo_BoardOfDirectorsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RelatedPartyTransactionsByRelatedPartyAxis=cxdo_BoardOfDirectorsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_AwardDateAxis=cxdo_DecemberThirtyOneTwoThousandTwentyFourMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_AwardDateAxis=cxdo_DecemberThirtyOneTwoThousandTwentyFourMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=cxdo_BonusPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=cxdo_BonusPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total revenue</a></td>
<td class="nump">$ 16,057<span></span>
</td>
<td class="nump">$ 14,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="Show.showAR( this, 'defref_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating expenses:</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="Show.showAR( this, 'defref_us-gaap_EmployeeBenefitsAndShareBasedCompensation', window );">Employee expenses</a></td>
<td class="nump">7,171<span></span>
</td>
<td class="nump">6,637<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoninterestExpenseCommissionExpense', window );">Commissions</a></td>
<td class="nump">1,714<span></span>
</td>
<td class="nump">1,377<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfessionalAndContractServicesExpense', window );">Contractor expense</a></td>
<td class="nump">829<span></span>
</td>
<td class="nump">817<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherDepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">771<span></span>
</td>
<td class="nump">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="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherItemAmount', window );">Other segment items(1)</a></td>
<td class="nump">4,422<span></span>
</td>
<td class="nump">4,133<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="nump">14,907<span></span>
</td>
<td class="nump">13,803<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Segment income/(loss) from operations</a></td>
<td class="nump">1,150<span></span>
</td>
<td class="nump">483<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeOther', window );">Interest income</a></td>
<td class="nump">84<span></span>
</td>
<td class="nump">5<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNet', window );">Interest expense</a></td>
<td class="num">(9)<span></span>
</td>
<td class="num">(13)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherOperatingIncomeExpenseNet', window );">Other income/(expense)</a></td>
<td class="num">(10)<span></span>
</td>
<td class="num">(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="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income (loss) before income tax</a></td>
<td class="nump">1,215<span></span>
</td>
<td class="nump">461<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax (provision)/benefit</a></td>
<td class="num">(44)<span></span>
</td>
<td class="num">(27)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income/(loss)</a></td>
<td class="nump">1,171<span></span>
</td>
<td class="nump">434<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareDevelopmentMember', window );">Software Solutions</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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total revenue</a></td>
<td class="nump">6,868<span></span>
</td>
<td class="nump">5,146<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cxdo_CloudTelecommunicationsServiceSegmentMember', window );">Cloud Telecommunications Service Segment</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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total revenue</a></td>
<td class="nump">9,189<span></span>
</td>
<td class="nump">9,140<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating expenses:</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="Show.showAR( this, 'defref_us-gaap_EmployeeBenefitsAndShareBasedCompensation', window );">Employee expenses</a></td>
<td class="nump">3,926<span></span>
</td>
<td class="nump">4,149<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoninterestExpenseCommissionExpense', window );">Commissions</a></td>
<td class="nump">1,342<span></span>
</td>
<td class="nump">1,181<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfessionalAndContractServicesExpense', window );">Contractor expense</a></td>
<td class="nump">444<span></span>
</td>
<td class="nump">419<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherDepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">305<span></span>
</td>
<td class="nump">355<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherItemAmount', window );">Other segment items(1)</a></td>
<td class="nump">2,991<span></span>
</td>
<td class="nump">2,958<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="nump">9,008<span></span>
</td>
<td class="nump">9,062<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Segment income/(loss) from operations</a></td>
<td class="nump">181<span></span>
</td>
<td class="nump">78<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeOther', window );">Interest income</a></td>
<td class="nump">84<span></span>
</td>
<td class="nump">5<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNet', window );">Interest expense</a></td>
<td class="num">(9)<span></span>
</td>
<td class="num">(13)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherOperatingIncomeExpenseNet', window );">Other income/(expense)</a></td>
<td class="nump">6<span></span>
</td>
<td class="nump">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="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income (loss) before income tax</a></td>
<td class="nump">262<span></span>
</td>
<td class="nump">72<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cxdo_CloudTelecommunicationsServiceSegmentMember', window );">Cloud Telecommunications Service Segment | Software Solutions</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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total revenue</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cxdo_SoftwareSolutionSegmentMember', window );">Software Solution Segment</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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total revenue</a></td>
<td class="nump">6,868<span></span>
</td>
<td class="nump">5,146<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpensesAbstract', window );"><strong>Operating expenses:</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="Show.showAR( this, 'defref_us-gaap_EmployeeBenefitsAndShareBasedCompensation', window );">Employee expenses</a></td>
<td class="nump">3,245<span></span>
</td>
<td class="nump">2,488<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NoninterestExpenseCommissionExpense', window );">Commissions</a></td>
<td class="nump">372<span></span>
</td>
<td class="nump">196<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfessionalAndContractServicesExpense', window );">Contractor expense</a></td>
<td class="nump">385<span></span>
</td>
<td class="nump">398<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherDepreciationAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">466<span></span>
</td>
<td class="nump">483<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingOtherItemAmount', window );">Other segment items(1)</a></td>
<td class="nump">1,431<span></span>
</td>
<td class="nump">1,175<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingExpenses', window );">Total operating expenses</a></td>
<td class="nump">5,899<span></span>
</td>
<td class="nump">4,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="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Segment income/(loss) from operations</a></td>
<td class="nump">969<span></span>
</td>
<td class="nump">406<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeOther', window );">Interest income</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="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNet', window );">Interest expense</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="Show.showAR( this, 'defref_us-gaap_OtherOperatingIncomeExpenseNet', window );">Other income/(expense)</a></td>
<td class="num">(16)<span></span>
</td>
<td class="num">(17)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income (loss) before income tax</a></td>
<td class="nump">953<span></span>
</td>
<td class="nump">389<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=cxdo_SoftwareSolutionSegmentMember', window );">Software Solution Segment | Software Solutions</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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total revenue</a></td>
<td class="nump">6,868<span></span>
</td>
<td class="nump">5,146<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ServiceMember', window );">Service</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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total revenue</a></td>
<td class="nump">8,182<span></span>
</td>
<td class="nump">7,845<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ServiceMember', window );">Service | Cloud Telecommunications Service Segment</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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total revenue</a></td>
<td class="nump">8,182<span></span>
</td>
<td class="nump">7,845<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ServiceMember', window );">Service | Software Solution Segment</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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total revenue</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ProductMember', window );">Product</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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total revenue</a></td>
<td class="nump">1,007<span></span>
</td>
<td class="nump">1,295<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ProductMember', window );">Product | Cloud Telecommunications Service Segment</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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total revenue</a></td>
<td class="nump">1,007<span></span>
</td>
<td class="nump">1,295<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ProductMember', window );">Product | Software Solution Segment</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="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Total revenue</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeBenefitsAndShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for employee benefit and equity-based compensation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeBenefitsAndShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482659/740-20-45-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_InterestIncomeExpenseNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of interest income (expense) classified as operating.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestIncomeExpenseNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_InterestIncomeOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of interest income earned from interest bearing assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestIncomeOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-6<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-8<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-11<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-60B<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-7<br><br>Reference 34: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 37: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_NoninterestExpenseCommissionExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of fees incurred for commissions on mutual funds and insurance products.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NoninterestExpenseCommissionExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OperatingExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OperatingExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingExpensesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_OtherDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense charged against earnings to allocate the cost of tangible and intangible assets over their remaining economic lives, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherOperatingIncomeExpenseNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net amount of other operating income and expenses, the components of which are not separately disclosed on the income statement, from items that are associated with the entity's normal revenue producing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherOperatingIncomeExpenseNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProfessionalAndContractServicesExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Professional and contract service expense includes cost reimbursements for support services related to contracted projects, outsourced management, technical and staff support.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfessionalAndContractServicesExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_SegmentReportingOtherItemAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of other expense (income) and loss (gain) calculated as difference between segment revenue and separately disclosed expense category to arrive at segment profit (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26C<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingOtherItemAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_SoftwareDevelopmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_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_StatementBusinessSegmentsAxis=cxdo_CloudTelecommunicationsServiceSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_CloudTelecommunicationsServiceSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=cxdo_SoftwareSolutionSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=cxdo_SoftwareSolutionSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_ServiceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ServiceMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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>93
<FILENAME>R81.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Segment Reporting (Details 1) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenues</a></td>
<td class="nump">$ 16,057<span></span>
</td>
<td class="nump">$ 14,286<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">United State [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenues</a></td>
<td class="nump">15,353<span></span>
</td>
<td class="nump">13,431<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityNameAxis=cxdo_InternationalMember', window );">International [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Revenues', window );">Revenues</a></td>
<td class="nump">$ 704<span></span>
</td>
<td class="nump">$ 855<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_Revenues">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Revenues</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_IncomeTaxAuthorityNameAxis=cxdo_InternationalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_IncomeTaxAuthorityNameAxis=cxdo_InternationalMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>94
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( !2*IEI&QTU(E0   ,T    0    9&]C4')O<',O87!P+GAM
M;$W/30O", P&X+]2=K>9BAZD#D0]BIZ\SRYUA;8I;83Z[^T$/VYY><@;HBZ)
M(B:VF$7Q+N1M,S+'#4#6(_H^R\JABJ'D>ZXQW8&,L1H/I!\> \.B;=> A3$,
M.,SBM[#IU"Y&9W7/ED)WLCI1)L/B6#0ZL2<?J]P<"A#G>B4^BQ-+.9<K!?^+
M4\L54Y[FRF_\9 6_![H74$L#!!0    ( !2*IEK[*-6D\P   "L"   1
M9&]C4')O<',O8V]R92YX;6S-DE%+PS 0Q[^*Y+V]IM4BH>O+AD\*@@/%MY#<
MMK"F#<E)NV]O&K=.T0\@Y"5W__SN=Y!&.:$&C\]^<.C)8+B9;-<'H=R*'8B<
M  CJ@%:&/";ZV-P-WDJ*5[\')]51[A'*HJC!(DDM2<(,S-Q"9&VCE5 >)0W^
MC-=JP;L/WR685H =6NPI ,\YL':>Z$Y3U\ 5,,,(O0U?!=0+,57_Q*8.L'-R
M"F9)C>.8CU7*Q1TXO#T]OJ1U,],'DKW"^"H802>'*W:9_%JM-]L'UI9%>9<5
M\=3;D@M>B^K^?7;]X7<5MH,V._._C&_Y-^.+8-O KW_1?@)02P,$%     @
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
M3@H\W/[O#;#"Q([A[8N_ 5!+ P04    "  4BJ9:98)/6I\%  #F'0  &
M 'AL+W=O<FMS:&5E=',O<VAE970Q+GAM;+69[W.;-AS&_Q6=M]NK.B!AQT[F
M^,ZAS=I;FR9QUEZ[VPL%9)LK("8)._GO)P$&MR>^9ES])N;7\T0?A*1'TFS'
MQ3>Y84RAYR1.Y=5@HU1VZ3@RV+"$RC.>L53?67&14*5/Q=J1F6 T+$1)[!#7
M/7<2&J6#^:RX=B?F,YZK.$K9G4 R3Q(J7JY9S'=7 SS87WB(UAME+CCS64;7
M;,G47]F=T&=.[1)&"4MEQ%,DV.IJL,"7OE<(BB<^16PG#XZ107GB_)LY>1=>
M#5Q3(A:S0!D+JG^VS&=Q;)QT.?ZM3 ?U_S3"P^.]^TT!KV&>J&0^CS]'H=I<
M#:8#%+(5S6/UP'=O604T-GX!CV7Q%^W*9T?N  6Y5#RIQ+H$2926O_2Y>A&'
M MPB()6 _"# HQ:!5PF\ K0L68'UFBHZGPF^0\(\K=W,0?%N"K6FB5)3C4LE
M]-U(Z]3<YULFT!#)#15,SARE/<T=)ZCTUZ6>M.@]](&G:B/1FS1DX?=Z1Y>E
M+A#9%^B:@(8?J#A#'GZ%B$O&EO+XL'R1&;EKDW]7'*]^/U[AYX'OY^_%DU1"
M?W+_V-Y0Z3"R.YAV>"DS&K"K@6YHDHDM&\Q_^P6?N[_;\'Z2V7>PHQIV!+G/
MWZ0J4B_H@:TC@YLJ=$L39D.&?7S!GED:\E?H71J<V2A!?4_*<4TY[D+ILU0S
MQKJ((7M&?[(7&R?LY+HN=B?CB7=N8P2U/1G/:\9SL&2O>9#KSE:AQY?,6H&P
M'+O#>QL2J.J)-*F1)F"9%IHG+)AN8KJV,<'Z%8VE[57XH*PGU+2&FL(M)1>B
M0(IDH+_%+XP*TY,BW9=;JPUV&PXQ&7K8!@D*>T)>U) 771K<,J%QC*YSJ6]+
MZU #VRB16^L/5/5$PVXS?KJ=X#8ZB2"?)QE-K3W)$9O6KQ/6]<4[B >X"]Z;
MA(EUE*[1']I!;4!0V+ =%-3U!24-*.DT*E0-\H%E7"A#O%14Y?9D!#M^L>8I
M'U;UY6SR# 831#,RW#$1\1#L;8Y8U5&M-:O!!GU9FSB#.^69FRC6&<[7D&LN
M[-\L['/+TR$- CWW$-HD+ VMO*?(-;@)-AC.(W7=5L-)5<4W^K+] X;M[JTC
M"2SJR]@$&]PQV1P.F>V$L%GK=WN*H(.;I(/AJ++OBWB2Z)GN4O'@FQY@S 0-
M?<R55#0-=<]DY?U)8:9Z#:7;N' S"P+;.;EP/7<\\F;.UH;8Y!X,1Y6Z&N]S
M*A03\4O5Y5JI8*^V8 #+^M9BDWHPG%>:#*ZG4C(J5BT 1MBL?=@\1?PA3?PA
MG>*/Z1'1;9X\6?O%ZR,F>AHU] B93*SS_5,$(-($(-(I .F)+!>Z[FA1C283
M,-T^<SV%-.TTM Z?1YQO/UEQ3Q&#2!.#2*<8]$B?T;M0?[S1*@I*9J!V8<OI
M9.B.+_ $7UAY3Q&'2!.'")QA*MY%&&IW6?^^UX\AV_!W?<0/$S)&GYE4Z#.5
M&]U+J^)S$8S96KT/N_6E;P(2Z120K/3$2@_[+?-(MPN"/2OK*<(1:<(1Z;3L
MLV?TS<E'@1[Y+K62PFZ/++$NK/BPKB]E$X\(G&A^H"P[*HUY)_@V2@-[/P5;
M+KY:.4\1D4@3D4BGB+3GO.,Z%<7H:Y2U]\:PX71,IE,KZ"G6AT@3E,B1%:("
M4S#:#@8;G+NVENS#JKY833@B<)YYSXL)RH:G8&Z 329X-)R.7=?*=XI<Y#6Y
MR(,CS9(%N3!5A\D3>HQ4;*VZ(R:'$X!7*-,3G2V-<X9^=<]T9$*9GM46^S;6
M?813Q":OB4U>Q]BDLWVY56=6&>A^?<7Z,F#'EN446/5_.9V#G32SY%5L,$H4
MF*17;JK55^M-S$6Q=><TCY<[H!^H63&3*&8K+77/)GI@$.6F8GFB>%;LRSUQ
MI7A2'&X8#9DP#^C[*\[5_L3\@WIK=_X?4$L#!!0    ( !2*IEJS2QK)-0<
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
M]UCV$]NM-LWTR-C[;%BN"(<UNCI70]205=M93;38EIW;2FCL \MABJTZ2&.
M[]="Z,>):0:;YC_Z'U!+ P04    "  4BJ9:78!@D&\%  #R%P  &    'AL
M+W=O<FMS:&5E=',O<VAE970T+GAM;*V8;6_;-A#'OPKA%4,"-)%(/3IS##1N
MM^5%MZ!IU]>,1=M")=$C:3O[]CM*BF2+%)L ?A-+RO'TNR/O_A1G!RY^R UC
M"CV7125O)QNEMC>>)Y<;5E)YS;>L@O^LN"BI@ENQ]N16,)K5@\K"([X?>R7-
MJ\E\5C][$/,9WZDBK]B#0')7EE3\=\<*?KB=X,G+@R_Y>J/T V\^V](U>V3J
MV_9!P)W7><GRDE4RYQ42;'4[^8!O%H&O!]06_^3L((^ND0[EB?,?^N8^NYWX
MFH@5;*FT"PH_>[9@1:$] <>_K=-)]TX]\/CZQ?OO=? 0S!.5;,&+[WFF-K>3
M=((RMJ*[0GWAAS]9&U"D_2UY(>N_Z-#:^A.TW$G%RW8P$)1YU?S2YS811P/
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
MM677JC/\3*Q)0"\:*H4%Y<^T,?C]-]CQ_["9?"1E>PYH;1W0<FD?3%5!BM*
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
M<8G^J!QMP/K<(KG3%V+0_M#I_-]02P,$%     @ %(JF6GNGNIJ_#0  ^BL
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
M670S'F.</_N*.3VMF(UO5Q]T9%1D3WD9.KXK0C.X.J72J6<G4UJ-CK</PL]
M)-$HCL/Q"-[;$WC;!MZ3:+J8AV-?@=I=' O,1_Q[)&ZB>'&#\RQ:S!:DT%DT
MFLZI!3^/SF9;,^K4[]Q6^8*SVQI3APN>.?N14LADDQFMG$3)(L9Y',TG\662
MS7;[D<KGT3RY"2+'232.9Q?D^0+4)_^O4$]NI@W4Z?]%J$\3@CJ.EZ$^2^8,
M=3K_$:B/1@1U'+\*ZM/9C(;CV ?UF\F<?U\)\W%T Y_PQZ^ ^6+!/X;%A$ W
MQ9E@$D^ OMF?"_/%+.9S/+]AF(_ P1^">0("$'D&F ,$D]EY>>KV'2513MJS
M)^]A/#Q#:6![7WZ@Q[FG4;8M[;G0<('3YB82$)*[?VW#9>JY3N!)Q]7>@/YV
M"='HXL2[...P+W[H<N'+.()-2(+\^A K9>J8W4)Q;T;%ZIZA0T5'"F6B?LX-
MU4I0U"0:<?291&/XR>M3";^"QB1&T!EU=-U5!*P\7N XGB?B5@,?*S@@<)%N
M9+%631-PHMFV?NJCV=@RJ\JZ% P5&+=)-A@8BNX)<V]#Y?5/-/#AUHG>3W+^
MD8E\:*RY>NFY;:Y_[G#Y58,^''L9.0_7T7MICZW;IXM#K8EZRY5KUR(X<$<K
M/EX^CA$E9N+[^G(<Q=,)+G\J8$]T#% G=T8I;1][("F4QOY])O=!X?UR_Y;
M0V,@]"(7)3Y* 04?.^[L"^P:J\?^4H/@X9[R&0&_"J:/%V,(.X#<HX3_G,K=
MZ4ZJ K*6CI=N.C]Q0W%[S-'[=0]>+RW^KBH?B%<;+W3[MI8I-$-<T,^?0@VT
M@\U;\,<=*JU"']NTFV3H,)UO8L(&5$.SW>W-4 \W_>ZQ#*4ZBK@G)FKVZP(_
M2TJHU J!3JVXX0/%[-611U);W7&ULY&P#7T_EM#@ UX1Z">43*8H3G]&SGMR
MV?1Q0B;':8[3'XEQCSC*/>(X1[J[-)9\]X+$KUJ??1A9D+@2KE?O-7]P-1"?
M2K37 [-:@1()\<&_>]!'F?TQ0;M#^"2"$=7DBWQ3T]:SAR"+;E\-/6T 5E/R
MV_>PG4R<TDL/<$6DVP:=* ]X6\2_>R&][-'-T_D8S*!;?Z;!Z;^BW0%!G9W9
MZE0T& O;V&WVH!</[3(.%#)T<I_ !5ITZM[1[R.0#0X4[G-C[I8RO:LC%""N
M+-4 &B&/*-4;$,0/2>3WF+MJBMBK.NY<[QG#48FI[K8ER-/:@M8&4Z_:;1G9
MW:SPNW:73"/#US=I,,&ZURDRY0,:RY4DP^FW/5A@]I+Q</%M+P*'/DK[;V#\
MCDMGMROLF[4;Y^?V[ONJK*9EKY7<MN6-JK' \B@;AMP7\.#W[GG8N96;;:BJ
MJ#]=0H*G)H,^?.+7(9TGW]>919$OG<;*@))@441,;HD>O(>WW4U4W^"<.GT=
MSV9TF--A08>;NM"!W5:.WO1RE_6P[YDE<4C;W1_=O=39Q+XC1,L7QU.JE4<W
M(VIST#8ET02A<TK57]*W*X_!U/C/,9A:RAN,0I\ZNJ&N:S9&KXS3++ ['J'6
MQKUQM(@GOL%,Q"**1Q,D_AFRY@+$)C?B99Z?IK!+93(%I-,:J"Y!^-N[@M\9
M+A$.1=\G@=>=[S%!;\U?G9+7@(+_-+.YVWS8^M)_S]D.]U_%PH=0>* M52M,
M'0WGTRN?!NL+6(N_[EP:!^;Y[T:A("]I )ZOC''U!2W0?.[[XM]02P,$%
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
M]/B>D6U8"_Z-Z1]SRA%(FD80(_4X=G9_W:H=O@$:,P&I&_5G(/#@_K.1F(#
M7@S%9,@49]90G>DLZ8X4+P7C#?@5B"_^T]\;0>>)\53L^WPRV/I6!DJPX"^"
MQ#8 Y?C9K'O:?72\B]_:-LOC%TO$=D&MJE YM@[/9N<]X>)7P/@CV(J_O,UM
M /_@VZ5"\W&T .]S:T/[@Q1TGV)O_PU02P,$%     @ %(JF6OH0H5>G @
M%@8  !D   !X;"]W;W)K<VAE971S+W-H965T,3,N>&ULI5513]LP$/XKIPQ-
MF[0U:9*6T+65*#!M#VP5C.W932Z-16P'VZ'P[W=VVE VJ";M);'O[OON.SMW
MF6Z4OC45HH4'44LS"RIKFTD8FKQ"P<Q -2C)4RHMF*6M7H>FT<@*#Q)U&$?1
M.!2,RV ^];:EGD]5:VLN<:G!M$(P_;C 6FUFP3#8&:[XNK+.$,ZG#5OC-=J;
M9JEI%_8L!1<H#5<2-):SX'0X6:0NW@?\Y+@Q>VMPE:R4NG6;K\4LB)P@K#&W
MCH'1ZQ[/L*X=$<FXVW(&?4H'W%_OV#_[VJF6%3-XINI?O+#5+,@"*+!D;6VO
MU.8+;NL9.;Y<U<8_8=/%#H\#R%MCE=B"28'@LGNSA^TY[ &RZ!5 O 7$7G>7
MR*L\9Y;-IUIM0+MH8G,+7ZI'DS@NW:5<6TU>3C@[7VIL&"_@XH&NV:"9AI98
MG2_,MPR+CB%^A2&!2R5M9>!"%E@\QX>DII<4[R0MXH.$ETP/(!E^@#B*1P?X
MDK[$Q/,E_U%BQY"^S. :8V(:EN,LH"_?H+['8/[VS7 <?3J@+^WUI8?8_TG?
M08:7]8T'\"=S;\"=(5?47L9B :H$6R&4JJ8^Y7(-[[@DBVH-DX5Y/P&ZEKSR
M]W*..8H5ZOZ2W"/MR7.E&Z691>#2M)K)'.$(DI@>6=9'&57:#=,(3B[/20OE
MH=G0$-9"FHT@'8V>!(NF5H^X3TF5"MX*XY+#QS[R&S,%NX.:JG)5E(09)>2_
MH3RPUJIM0%"S;'T&AE$"V;B':Y06XLR;O].!:)?G^9F=1#!,4_BA+*O_]A[!
MR4GB2CT>PTL?1[C7JP+UVD\D=Q&MM%W;]M9^Z)UVO?X4WDU,NI$UG0?46!(T
M&AR/ M#=%.HV5C6^\U?*TASQRXH&-VH70/Y2*;O;N 3]KV#^&U!+ P04
M"  4BJ9:5I:0S>X"  ";!@  &0   'AL+W=O<FMS:&5E=',O<VAE970Q-"YX
M;6RE56UKVS 0_BN'5T8+6>S83IMD2:!O8X460KMUGQ7['(O*DBO)3?OO=Y(3
M-X4T, 9^.9WNGKO3^1Y/UTH_F1+1PFLEI)D%I;7U) Q-5F+%3%_5*&FG4+IB
MEI9Z%9I:(\N]4R7".(I.PXIQ&<RG7K?0\ZEJK. 2%QI,4U5,OUV@4.M9, BV
MBGN^*JU3A/-IS5;X@/9WO="T"CN4G%<H#5<2-!:SX'PPN4B=O3=XY+@V.S*X
M2I9*/;G%33X+(I<0"LRL0V#T>L%+%,(!41K/&\R@"^D<=^4M^@]?.]6R9 8O
ME?C#<UO.@E$ .1:L$?9>K7_BIIZAP\N4,/X)Z]8V3@+(&F-5M7&F#"HNVS=[
MW9S#CL,H^L0AWCC$/N\VD,_RBEDVGVJU!NVL"<T)OE3O3<EQZ9KR8#7M<O*S
M\X6F_FK[!DSF</W<\)I.W$Y#2]C.(LPV.!<M3OP)3@)W2MK2P+7,,?_H'U).
M76+Q-K&+^"#@'=-]2 8]B*-X>  OZ0I-/%[RWX6V..E^'#<D$U.S#&<!38%!
M_8+!_.N7P6GT_4"6:9=E>@C]'[(\C'/6A_U0']78J3-%<V8LYJ *L"5"H00-
M+)<K..:2-*HQY&%.)D"=R4K?FBO,L%JB[OKD'BE<JJIN+*E="%44/,.=2'%O
MD,:;9V=I5&'73",,1V-_WTA22R:^-0;?=P>INQZQY)E 0W+B[UNDN2R5R(%7
MM58OZ (92%)WW:(Q$YK^K*D:P5R%.5+G,LX\+1S'O>$X@1,OQ",2?BG+!-1[
MSZD'DHCR"))X[)[CE,Y@!PQ?B2PI86Z RTPT- HDP HE:L)T4"RG*::3ULS1
MT=;#^#WK(I/+T>G0KX]&$?5!^W[84B-"U0X9NB';:80_>^?ASK]'9&EJ]'0G
MWOK[OLIPAS JU"M/BX8^@D;:ECLZ;<>\YRWAO)NWM$U)K+@T(+ @UZA_-@Q
MMU38+JRJ/?TLE24R\V))?P_4SH#V"Z7L=N$"=/^C^5]02P,$%     @ %(JF
M6DV0YL>?!   9@P  !D   !X;"]W;W)K<VAE971S+W-H965T,34N>&ULM5?;
M;N,V$/T50@V*+*#:NMIR:AMPLMWM%M@BV-VVZ",MC2TUE.@E*3OIUW>&NL1V
M;.<E?;%XF<N9(>=P/-U)]:!S ,,>2U'IF9,;L[D9#G6:0\GU0&Z@PIV55"4W
M.%7KH=XHX)E5*L4P\+S1L.1%Y<RG=NU>S:>R-J*HX%XQ79<E5T^W(.1NYOA.
MM_"E6.>&%H;SZ8:OX2N8/S;W"F?#WDI6E%#I0E9,P6KF+/R;VXCDK<"?!>ST
MWIA1)$LI'VCR*9LY'@$" :DA"QP_6[@#(<@0POC>VG1ZEZ2X/^ZL?["Q8RQ+
MKN%.BK^*S.0S)W%8!BM>"_-%[GZ%-IZ8[*52:/O+=HULB![36AM9MLHX+XNJ
M^?+'-@]["HEW1B%H%0*+NW%D4;[GAL^G2NZ8(FFT1@,;JM5&<$5%A_+5*-PM
M4,_,/U6&5^MB*8 MM :C&:\R]E'*;%<(,1T:]$&2P[2U=]O8"\[8"]EG69E<
MLU^J#+)#_2%BZP$&'<#;X*+!SUP-6.B[+/""^(*]L \XM/;"-PNXL1>=MD=%
M<Z,W/(69@U6A06W!F?_X@S_R?KZ -NK11I>LGT"[> 7M17NGT28#=CDK;)%^
MKPL%&2N>Y7@CI^OE/UAAS$C&2ZE,\2^WY99*+%QMF%PQDP-;28'U7U1K=EU4
MN")KC1[TNQN&!YSF_0FS]Y!"N035K43LHY):LSNNU!/I+TI95P8AI759"VX0
MU6+?\>_(9,?";V#BSM8BXE(@K)3.BXUF5RP8N=XXQ,'UV)UX$7N'0S]Q_='D
M:#/RPFYS-/8PT"U2X@9]&TCS2@JY+D"S"(UX[#IT@Q&)^^XH'#\O>HEO%Q-_
MPKXIGB%#JP=[5H9FK.(EV;#""6'Q1^UL1(HA:DG#!9+AV0.]HLR'#6C?=^/8
M;U!/W"0(#G<]-XEBNQMX;APD>'?HO ]/U+7GO[/TB [Y%A2R/::1G@Q*<*UA
M50LFBA5=$]6RWHM,[[AF?C#PV1-PI5VDWI/Y([%@$'12?6HH4?I%IDC:ZZ0'
MA[< 'O'ETQ<QO<Q>08NIJ#.;6Z:Y@,8K^0=#\;9V6S!T'"A[%7N^7;B*@[%U
M25DSN0)@9<.H0(QZ7"ZD0E7B(C*] ?O&B:<+D9Q)VZN1I+(I9BU79L<5X$#4
M-A/H>0M5#8?Q^$G0Q!/@M?\?XS%GJN#UB-90X5445H]G^+8B72E.#L\<41 V
M$87>6P1TLE1X5=4$:3]:%,,V ^$9P"+9GBI:UW8F&;.YP3#HFKV,GZ"DM5*
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
M&5R18YG6T]J.TU7PD4P[<J70+.DW@,8'T/Q::[?O^ 7Z'\OL%U!+ P04
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
M   9    >&PO=V]R:W-H965T<R]S:&5E=#(Q+GAM;,5:>6_;.!;_*H0G'22
MXU@^$B=M Z3MSN[LMM,B[;38/VF)MHE*HDM2<3*??G_OD9+E(YY.I\6B@*.#
M[[Z?^FQE[&>W4,J+^R(OW?/.POOEU=F92Q>JD*YGEJK$FYFQA?2XM?,SM[1*
M9@Q4Y&>#?O_\K)"Z[%P_XV?O[/4S4_E<E^J=%:XJ"FD?7JC<K)YWDD[]X%;/
M%YX>G%T_6\JY>J_\[\MW%G=G#99,%ZITVI3"JMGSSDUR]6)$Y_G 1ZU6KG4M
M2)*I,9_IYM?L>:=/#*E<I9XP2/RY4R]5GA,BL/$EXNPT) FP?5UC_X5EARQ3
MZ=1+DW_2F5\\[TPZ(E,S6>7^UJS^I:(\8\*7FMSQKUB%L\FP(]+*>5-$8'!0
MZ#+\E?=1#RV 2?\1@$$$&##?@1!S^4IZ>?W,FI6P=!K8Z()%96@PITLRRGMO
M\58#SE^_5A#)/3OSP$5/SM((]R+ #1Z!&XHWIO0+)_Y19BK;A#\##PTC@YJ1
M%X.#"-](VQ/#I"L&_<'X +YA(]B0\0W_LF !;K0?CH+@RBUEJIYWX.5.V3O5
MN?[YI^2\__0 5Z.&J]$A[ >X.@BWGZMDU!,!(?XXIY2X25-3E5Z7<_%)P3F]
MLO 9)?1,2$3 W"J%@/)".R%%3J!"XJY,U9)BI$=0X;&9S72J!-/LB@RN)5)
M*BO@<2:5'%+QK?$+/)?@P+LN"&4UM/I2Z243K. E5B"56,G<,1'7HM>FT(!U
MB;6\R@B"$HQ7I02O8*'T%O'LF-B=6N@TAQ("D9D.AVH2;[>("FD5TDEJ+!P7
M7 M+@7MJ9J<5^#C^^:?)8-!_>OOV=[Y*GIY$R9A68#;7<JIS[36P00T0'YDA
M9ZH<B5VA[FN^(U&_@**),ACENU(D U%P#/4$J-54K&(#0V>FLH$WX8T@WH@.
MH\O"88&<O'XHR-B/,+F)U$QS/0\6!.9"?JXQ+.4#J7U7:6T&F4(+=ZW.>:G_
M(,X\S%, 31I<#895G#>S6E4U*W<RK\C1MH@+<Z>VQ>J)&P=E.4_'282HU<R(
MTGA@-'<Z4^3CNECF.M5>@'VXYDJQY@A$.:^1Q<$'G,HR<S(74V,1PB0H 1#W
M1'E7 BAJ'4Y?(45/?, A<T"-N3/1O8GQAVTM%)*?9]&5:FU0K)94R"*%EZ98
M II\-;EXZNJ@KB.]41&%#"*(*=U)"_OEVU;O"E(/7N6PI]-9A8L@W;R25B+Z
MR-TMH\ !;S575*"^H[ADMZE-PU8C(1X:&0VG&$H0P0N= 0>9=K %O>B2BM4]
M0CPC(D'5K/G:$];9(MM(3Z @/JAB"7/?6/V'*67,!!*2EZ<IQ67.\FZ;8YT0
M.3S5_5);]@_Q;UE"Y@<N1A"K%#?5',587')]&E)B(I66L;=8:;]@1IW,5>VC
MR#!+PUX5N9U6.N><P"&$'_9/SGE,%0J0NYR9\&@JT\_1\4@,_[#?P]: "^DX
M($J$*2S)V0&<<9NB5"EF59Z+%/R6F;0Q$W6#)  +UB+J>RQ11W(N'87' ^&E
M>[]2^0SP>U!'Q,+I>_]P2C#P2BCESZ2(WN.0UN^AI!GY(*6]6@O"RWNRAJLL
MV3F4'PI?ZOC0I6[4C>.7-V].V(UD*)1;&11P2U-RV! :\IZ=%ZY*%U0U&GXV
M6&&XAAN1+J2=4XYT+'HYSW=(Q3"^>;,^;+G"(0+9+P"HEI+]: ]#M>JW]49\
M$**8/<"I-06?+'"R"OEO$[A.Z@^LH<KCFA(ZN?*!C D4Y[WQY,E?SI"; $U2
M;[-Q&R@B+C$%J,98?@$IH\<B?$@Z=(\P2]T^LO2X&(D5:7X)"]US[L\?Q%$R
MXM='%Y,NI;&EXBR6!ZG3REH0Q3E2'N7+[1S"I<&F%%*NFL9P:-QW(V[7[_=E
MJSI9(>;0ORRH)R/A%IBLOB#W0#&ND3AF>?(5[=9XZS+%I?5MZLT462_H8!0B
M8:4I$@VUA%6M0 U?/74*25L<#R].:D5"JZ::+QH\49D7P4&I@H>3.67_V$,2
MASGF.G>U35YP14J>BO=H+57!"/O!.EUQ-)@\W0(8/PYP3@"709Y-H/,&:)MI
M@ S[&Q62^*7*Z7.HB]):VXG@G"R3G,))0N<9C,+ZFZJ->M!MWYT'OEI/H+!?
M9ZT&ZB7:%D=QJ$#X:- /7M5DQP<E;9>,7+8MC3Y2!LKDHI0,R/?(?C,]0ZHY
M'O>?G C02%MA+ O.:8$4D0:U'Q1$DWX(HOYF#!VHT+?H&*C*?]1VCIKT'6IT
M;7/B<7\9B4T/CH=)FBRD'%0?FM\TEQ6/"#]$15%#R?!@FMF?(-ZC K_2:FZZ
MXJ7,-1CZNQISA#9T,S]$VL$@B#L8?(.X;]'Q4S\DWDG[N2O^(TLGW7<1]^*@
M8[C_AU^,DJ"I<?(UFFJ-UE$A195[O=Q51!P(XF04U$!U@;I]4SD>8]99GG3#
M?)! FEM0%X8F3(NRG*O0, QZDX1+>S+N78R>!!*U/K2KV[,L],-A/H.T697Z
M^ECHI;R!)JF;V2K&D^@VR3=H]ROT=VAQ03S_TQ*R6[G4&9K?-TCYF(R1I5[#
M;A_57.+A;^I.9JC2KY"0Z?Z#NJ<_KU6)B]I90Q5XMS"JU/?;<\C7.K!K>_!!
MTUW^J-ZH;HZ2T3[M+N3=3J?I0F<?GS[2-<=FY+&^^]%F^V#?O!XV#X^[7S?5
MMD_M&VW;K40=8\UZBP1PU1+CGM^WA=K0%O<58=#=L.GY)@W>#T1"$+C><C59
M,1#8Z#ECKJN\\V"(7M5;J= XM/=B;/VC:.W!D#2-T-WC*J]4&KNQIK'<](LV
MTZVU&F<L9%+G]$R'15LS*/%:8VLWN*FP]8J*^3H:3<X#JWSQS;S>(@1I P0W
MK)!'^3JCW1CZ^3COAC2%+'T9"?;_KG* @E)-[1_KY>5*T:2WH2))4]-2ZJP)
M['J0FRJV=0$482RKMV2T#*9J"M5JDX5>D'( -9:TDH'O;)-^9-.1- 4AE)WV
MJ0IH0J-U$U@(^GJD%,R1'"UBB9G/,.!IQ)3DD-I;%=@#.>]\AS+P8;>B@=/'
M_:M5[I+>\.()(P[U+H[S$5<M+(=.__LRC/1360R]O#S:V5@#<)/_C07L7N^$
MR[3'L__"&X@KPKKAM>M!)7Y*^"42BK>,#<,_LBF/%&)T<8G?09B_QN-QN+P0
MH_%$G-+E1)P/PM6E0+-S*CZ0E>GCE2ZJ8GL+D'3'EV,QXB\85_4(T^RKB62C
M_^/D?"A.@/#=]F;A$=Q'P#X:#HCI(,YZ1TZ+QT"*EAA;ROL4EF39*>J=E7/5
MDK^U:C_F"#O9_< PZ%TV6HR/DM[%+M9-'G;07/3.Q9,=1/!+//W SM;^!+<M
MPY^=&&&R< O!N89<.&A^,XSWK(MVW.^JQ7A*&&?D<"&<=AP9!H%[P'N2X0&P
MK4IU*I*HA:\X?(R\?8+?"7Y_X[X+QW5Y1]O_N'EM54X*P2C%39;ID _0[;;V
M]&8:1TBB=H5N<+73P+6#\13_Z,SCX4HG]GU)/&M]Q"V4G?.G:I10,DOXGML\
M;;Z&WX2/P.OCX5,Z##VGZ297,X#V>Q?C3OB25-]XL^1/PE/C,?[P)>V=E*4#
M>#\SQM<W1*#Y/P+7_P-02P,$%     @ %(JF6DMPPG9,"   Y!4  !D   !X
M;"]W;W)K<VAE971S+W-H965T,C(N>&ULK5C;DMLX#OT5EB<SFZUR?'>NW5W5
MG4YJ4K63=,UEYYF68)L[E*B0E!W/U^\!*,EV[#B]5?MBZP("!R!P .IJZ_Q?
M84T4U9?"EN&ZMXZQ>CT<AFQ-A0X#5U&)-TOG"QUQZU?#4'G2N2PJ[' R&CT?
M%MJ4O9LK>?;@;ZY<':TIZ<&K4!>%]KL[LFY[W1OWV@>_FM4Z\H/AS56E5_0;
MQ3^J!X^[8:<E-P65P;A2>5I>]V['K^]F+"\"_S:T#0?7BCU9./<7WWS(KWLC
M!D26LL@:-/XV]):L946 \;G1V>M,\L+#ZU;[>_$=OBQTH+?._FGRN+[NO>RI
MG):ZMO%7M_V9&G_FK"]S-LBOVB;9Z:BGLCI$5S2+@: P9?K77YHX'"QX^:T%
MDV;!1' G0X+R7D=]<^7=5GF6AC:^$%=E-<"9DC?EM^CQUF!=O'GKBL)$1#D&
MI<M<O75E-.6*RLQ0N!I&F&#!8=:HNTOJ)M]0-U6_0,$ZJ'=E3OGQ^B&@=?@F
M+;Z[R46%OV@_4--Q7TU&D_D%?=/.WZGHF_Z__$WJ9N?5<<F\#I7.Z+J'F@CD
M-]2[^>F'\?/1FPM@9QW8V27M1V!O'P/VLKKQ?* N^@\C9:VM>E=4UNV(U)TK
MZZ >K"[5;99Y?O<GJ3H::_XF9<H,>E!4:L%R6!\="G6K?:XJ\L(8$$'EK0UM
M2(SVU79MLK6JO-N8'$LJ%UD)-.MD/--AG10JS:I$*V!7NMPI:I!!#ZS;.@=V
M]5$7E*MW7RBK!<VGY=)DY(-Z^M,/+R>3T9N/[SX%N1R_^>= _8'4]"JN#]WK
MRSU; =]HX8L4J8@HN&4CS8[AYMYX<(J#@>9-B^XIWS0V1;HUJM8Z* I1+ZQ!
MK>9*-QY6#A4/+4]>O1KU%2*F7.T5XY7=H<XG1!(<R2%4D70AHFQM1]HK*B4.
M]Y11L8!O;;T,U.\=[HO6I_-19[QTY;.]W8. /]+D@_;19 8!X13S4&'-RBPL
MI>S(B-6>;C)3:Z[J2IB:\X75-REQF$Q1^Q7%XV@N=@<;]"B8?2"QFC.?435F
M/)*TK$DBK_/_@'PYK>X^_'Y_>P["0-TFZ%MCK5J0JK1!?@"_BH8\UH9,P^TC
MS^+7_B Q-#_@4L(.MREUSN6MB6L(+ZV#BPPRTQ7'>Y?*F1TW\!=U]:V@%>CR
MD*(O&5'.B> 9]0Z!)"Y,@F7/ J6+2MOS.G@-]/15YM": U=O0L:PM](%67/A
MZA84:2[X$U6RRI2R;I^/".O=85ZP@LOUT(:_LST?_2C;<+JKS9O;X\T=J(^N
M0=#J$N.4DHDK^PQZ?I6X[,RNFJ L!5#7&M3YBJTNFW7(FIB>>+7"&!41\3,*
M4GINI&@X0&EQ/WFP/(YU4T<2\2[]SR &J&:S!^J]=X7 @/[Q"/__ P:^]L03
M']?/=Q&9T(43K*\\QI1]PAQG_AD0*5?9T%$8U5,SH$$_Y=;X1Q%#O-T&X6P$
MST2 /D-]4//O(&ZBA%[QX2PFSU;1N\;C;UHZV-TVAR[6ID25<Q;,DQMN0! ;
M[T/;(--5Y3R_!639%1W/5U;+2.*(D,R19G%WH'Y&_3IO0%-V=TSP@:D31KYF
MSIG4$2ZF*0_:_M!6,(\*9[D+A-@. F"'F))N'R54O= DJI.;T-*46&Y.N1+A
MP$B(/6^97/! @M!2A'BDZC&>Y-BF@-D\G'2$,VZA(1PP2DY A&&;@\P1E@W8
M#S$,(L%O]N:4:&Z_WSZD'+U;I'KLO-_#X.%A_.*-M#J#\P?UCX8->.RDJ'AG
MF^%,>OETWGE\9G?: 0S6TP0%#:;10,RP/ 'Q;-=XG25S7( @_)Q?YD+]SII<
M2^EH*WZE0R3"=;Q!Z% U[N&?^H2&O9+I*J@/I7I/"Z#V.\FK8^?@OG104W)[
M5D_F@QE./];R8(8!)6.#UDIN+\%0SV1KURY(1^<Q' ,@HXP>Y9O8YA,NN<VA
M.Z^-SY]5F%-VJJ3(Q\9N33.7^C0Z=1J:4 4^@IFB+A2(Q .BW4'F>*).[/BY
MQI"8'L(#YLJHFYBVIBSRQ>ZW"D.P/["(C#$NWT^KS**H%='9QR[/1@T'!Y4C
MZ?+:L^M+PS-'RO24UD_&@W$7NI873E= ^+D(SQXG_$*$7SQ.^&5?(O-D-G]^
M6?#50-VG9])OUO!7%>E F>KV3.V?)H\,VRF/8724;(]XY L5R5< ;%L[9[6Y
MZ;K<3/(OQ^E_,IU]IU;":<[+TA/J/$8P4/^B%=Q^\*[I<%(4# IU#?[SG%NU
M#](9%W4 'X5P[&FA=QQ+4VZ<W33@U$9[0U$\S*PV!=98O0VUB7)JVC"=-%68
M]L7)V%?M<1P>KBHM$YXIE[POB?]:M8E>Y)$UK5+V<E5C<G#B $2,T ,8# 73
MF&S3G$DK-Z&J(XEKB&3&?.;-GH-*)DY[$(N#"/P#'0&5DKQ)-7O(CZL2C4 &
M;"YK^9"TY39[P/4+'$]0B+S#Z1.79,!&F\0N%:K0MP.0":$67QH0^RZ%PTAL
MRIW;?(8[7,5#C@<*ZS"B<'8N"" 0X]HSR>GN(,F$>E%Y2S#-. !1T<DQ6\A<
M$M#>%TCOMF?DQT%)QYKPE0XIA"Y"<DQ;\F>SY#169B)6TLKAI-YD3J 8;7NH
M][5-B:-SX38&)MF-74.)V,-$.PHT#_4;<0W;&)N14CB_DG,D$LGS:1$M\O9,
M]S\NA]PAZGQV6>L-Q[MKD4C!A4&*[M)YI(V-!(]"6XF9"^V1M64/';IM&IS[
MH#,\^/)6$/HZ?U\,XG5,'^&ZI]TGS-OTY6XOGKY_PK$5L[FE)9:.!B_F/>73
M-\5T$UTEW_$6+D97R.6:-+H#"^#]TKG8WK"![L/NS7\!4$L#!!0    ( !2*
MIEJ0'&>J2@<  + 4   9    >&PO=V]R:W-H965T<R]S:&5E=#(S+GAM;-U8
M6W/;-A;^*V?43$>>H2W>+X[MF<;)[F;;K#-QNGV&2$C"A"18 +3L_?5[#D!2
MLBTKWG9F'_K""X#SX5P_7"ZV4GW3&\X-W#=UJR]G&V.Z\\5"EQO>,'TF.]YB
MSTJJAAG\5>N%[A1GE15JZD7H^^FB8:*=75W8ML_JZD+VIA8M_ZQ ]TW#U,,[
M7LOMY2R8C0U?Q'ICJ&%Q==&Q-;_EYM?NL\*_Q812B8:W6L@6%%]=SGX*SM_%
M--X.^+?@6[WW#63)4LIO]/.QNISYI!"O>6D(@>'KCE_SNB8@5./W 7,V34F"
M^]\C^M^L[6C+DFE^+>O?1&4VE[-\!A5?L;XV7^3V'WRP)R&\4M;:/F'KQ@8X
MN.RUD<T@C!HTHG5O=C_X84\@]U\0" >!T.KM)K):OF>&75THN05%HQ&-/JRI
M5AJ5$RT%Y=8H[!4H9ZYN^1I=;. +[Z0RHEU?+ S"4N>B'"#>.8CP!8@(/LG6
M;#1\:"M>/99?H#J33N&HT[OP*. GILX@"CP(_3 Y@A=--D86+_HS-CJ(^# $
ME<:Y[EC)+V>8^YJK.SZ[^O&'(/7?'E$PGA2,CZ&_3L&C$(<5#-(S>(8-7S<<
MKF73L?8!-DR#V4HL+^IERYH#UKMB=J!VHMJ#[4:4&R@EUJ(V(%=0UK*OP%!Q
MR:;I6U$R*C(--+,HN0;65J#ERFR9XOA1]ZZ?FGO-]0@.HD4$OIC74NL36"G9
MC!K0<".!:1RN =LL!;4E![9&MD%%L(&73!M>H0$:Z]#AL[J6J ^G1MDKT@9Q
MA)DFU3NW')]>:*QPPQ46'LZ!)&+0=YHUG)@ .]%[Y!19BXJ1%L?1;&!:-\XB
M#5'X\8<\#+*W3["TP9?5EAR^@SFS ?Q^ $8'KWE+HMBB^!UO>^[T0F*L*<@O
M $TX'JHMJ[ZD-"#G2E1<H0'HE1;7C'&8T^I P%^I!IK7<=.S>H=1(VZKGZ52
MO]2E$IU%]Q[] BU"AK<N1TBH[RBMG>)HQ@H3"<?1))/:-[V"<B/X:B_Q*UX*
M[0"_H;'SZYOWGTXH&3";X-H._G#/RYX6%+A9K1!)>?!/OEHI_@!_/X.?I6J=
M1TCT?TGX):>D'@:!8?<HB2W0]:J3!(.Y,.0W:;K+<#*1W[&Z=QTK06X0:.I^
MX6 &5K*A+E,_C%G(VI;\ONRK-0:4<,:ZLH%1$N'UGC66!BJN]"!R:N0I+JZ$
M<<>4H(DTU0J#WWNF,$]P*E<NO29$6T,'G3$8[ZQN.-,]_FTWW 9B/S!H[A)W
M&/N>*%DG#*I@0XW*R;;E-=7]WG3[5E02YVBEH72DS0/1#)8:^F3/BR0[,@LZ
MGGX/T2/-265AU:><1+(4K=LQ41H)-]-4_SOZ&6H!9<2Z%9A(&)G).?R^LP7@
M'<\9;ZI)-V@0.[%J'73P+KML;I%99J,XA\8MY)P6<L!E&.T8UV&+AA\Q4!4R
MRDIT_E;#W*:1[#4.T"?GZ&%"VM\2/$6ZMI1S.U;T_.,^ 'Q]SFFW$YM\E13C
MT7OC^WJ?-V]=:4\T\P9R+\A#?)].W[?/>6H<?@JIEZ?Y\/SLN&_J#3S?SW",
M>S^:=QQ2X S%(!ZDGI]D\ L6T/FC$.^8]&FPX4/3U?(!73BU1%X1IO@,XP0R
M+\@"6C@:H5TE!%X4AQ!E(7YE04Q*&87UB($=$"".8XCR!/*P@/<<TQ")P>V)
M:;5L:%_P']<0^0G$:0H93G+S2#^!BY&>!R<0>D41X%QQ%$#LQ6$X!&57&..T
M!3HIA\3+BP*"V"O08Z];=H,\@")%(2](_,%[C[WU+-<_TH+$]=@#>8Q1PL?4
M/BHU+^ $N^SKYG#=I# /4NR>!SX0\O$*>@-A2ME5)!$^ R\,DD'&=B]QW5L)
MLY@CD=Y9\D)@C,<)_(L_]0.)4WCMAB!\^_H74& .Q LI1^!92UBR+^N^HJW0
M1JCJM$-F?CBP[)<;IM9$.:5T.[WN<05XNY681N! S'X&)?&:&IMVV2WON-K@
M67%*YK/O\D/\?^>'S,NQLAP_N.^C_)!X09P.S^?\$!:)Y0=ZO\0/L3^(8U6$
M>?IG^2%&K +K,LZ)MM(H>\(/5$Y!D1)39-E!?@@*B(H<\B#['C\DR ]Y!'F4
M'^&')+>)G)!F472,'[!R8B]#?P21E_O1*_DARR'V4ZO('R('BE!R@!J"R'&#
M?;] #B%V9Y8<DE>10T;<$.&*\ :)-?@N,X39"\P01_%?G1=VQU(7:VZW8W0\
M77.Y5JS#4RCM/AA"T9[EUU;8@C9VJ-OMT+'$:LSJ,SSSNI);/DP(#[09HVN<
MZ3CG=I#X,VSPW*4+ZFBSSIU\W3[0@:$\9WCVJ0[BHX83H#L@_O%]DB7#QT;B
M"I%XD5MI(KL$?]PW&3(_AAQKU)7<CN*&C<B;D7$.75HL]FZ1T/ZUO2NC0VG?
M&G>A-+5.UW$_N5NHW7!WEX>&K/&$#C5?H:A_EB4S4.Y^S/T8V=D[J:4TZ&S[
M2>G %0W _I649ORA":9+RJO_ E!+ P04    "  4BJ9:",,MA]@.  #I-P
M&0   'AL+W=O<FMS:&5E=',O<VAE970R-"YX;6S56^MRVS86?A6,V^FF,[)L
M28GCYN(9VTEV/9,TV;AI?T,D)*$F"04 ):M/O]\Y "^R*49QL]ON3":F1.#<
M[X!>K(V]<0NEO+C-L\*]/%AXOWQV=.22A<JE&YJE*O!F9FPN/3[:^9%;6B53
MWI1G1^/CXY.C7.KBX.P%?_?!GKTPI<]TH3Y8X<H\EW9SH3*S?GDP.JB^^*CG
M"T]?')V]6,JYNE;^T_*#Q:>C&DJJ<U4X;0IAU>SEP?GHV<7DA#;PBE^U6KO6
MLR!6IL;<T(>K].7!,5&D,I5X B'Q9Z4N5981)-#Q.0(]J''2QO9S!?T-,P]F
MIM*I2Y/]IE._>'EP>B!2-9-EYC^:];]49.@)P4M,YOA_L0YK3QX?B*1TWN1Q
M,RC(=1'^RMLHB-:&T^,=&\9QPYCI#HB8RE?2R[,7UJR%I=6 1@_,*N\&<;H@
MK5Q[B[<:^_S9M9X7>J8367AQGB2F++PNYN*#R72BE1./JJ<?7QQYX*-=1TF$
M?1%@CW? GHAWIO +)UX7J4JW]Q^!SIK8<47LQ;@7X#MIAV(R&HCQ\?A)#[Q)
MS?R$X4T>QGP7QP'@XVZ Y$+/W%(FZN4!?,0INU('9S]\-SHY?MY#[N.:W,=]
MT,]>*9=8O61K-C-Q43HL<)UD/@B0^.&[T_%HU$?JDYK4)[T8+J33CF!_(#$4
M7A*N+D(? &8/,D]J,D]ZX<.QX;:%N"RM546R$;]86;AL)[4/AR8.Q:M2"6]$
MLI#%')ZE"Z%NPP=AI<<W4^772E&P6QK+EKA45IO4"5FD[7V)LAX!%R&-;19A
M*9-%HMQ ^(42LTA&4I'A6V3(]'<$%815CT"391&JF%F31VQ$8W@:@F1+9!!4
MO[!*B3PXM"*'%G#'9%'[(Q.)A\<#L09'*C&6%O52,P<7[NA19IQ#A"%%?S^:
M#!C2]P +I2\5A^UL,R#&38F$ BM0Q  ;1F)R>-J"TL1*80D^*\$ ?QSV&,C3
MVD">]JKT4KH%D\,/KS^7>B4SPMUE'0\$M8<]G];DGO;B@,&E2GQ4B0+P:::"
MY9QGR+UD(*0,<6E5JKUXRS+O8N,;HZC8$[_ BN36NB2L"^H7\/14>661Y6 W
ME&I301:+?_3>L=%"Y0N-K&@1M6&])JO2N[HEHU4$FL)9,%HYIR<J9=(R@_4J
MOX"!2P<+A>WC;V)@.*FRLHJ%P4P],S4K?6F5@"47)M<)+0:Y6.B&(HC!ML6
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
M'1W\8-VV&WG=ADP3QLR](58<EA7_)=!Z!SXOC*'MQB<8_COI/U!+ P04
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
MW&$ 45]KSV[<O$<L?V'-V3P6^W&VH=3*$E9N0.]L[L'F?@C64;-/PNJ0?%B
M=P#3([8/UZXAU22GANA0>NJ[_#RN+X*B*^'&,.,^-@G5<#C):-+2D,Y"2&@V
MY $D@<M&ML]*FD7]['\$+.([!IHI]+2_(["#/QY.IG_OXM:@6KGKJ:8A2F72
MW>'ZW?X&?-9=_.[8N^LS84L-H:'&BD2#DXSFJ^JNI-V+D1MW#;R5ABZ5CES3
M+1Z59:#S2DIS>+$&^O\%RW\!4$L#!!0    ( !2*IEK3JZ[4E@(  -P%   9
M    >&PO=V]R:W-H965T<R]S:&5E=#,P+GAM;(U4VV[;, S]%<(KA@W8:L=V
MTJ1+##2]8'OH%O2R/2LV'0O5Q97DIOW[47;B9EL:[$66*)[#0\KD=*W-@ZT0
M'3Q+H>PLJ)RK3\/0YA5*9H]UC8IN2FTD<W0TJ]#6!EG1@J0(XR@:A9)Q%633
MUK8PV50W3G"%"P.VD9*9ESD*O9X%@V!KN.&KRGE#F$UKML);=/?UPM I[%D*
M+E%9KA48+&?!V>!TGGK_UN$GQ[7=V8//9*GU@S]\*V9!Y 6AP-QY!D:?)SQ'
M(3P1R7C<< 9]2 _<W6_9K]K<*9<ELWBNQ2]>N&H6C ,HL&2-<#=Z_14W^0P]
M7ZZ%;5=8=[[Q)("\L4[+#9@42*ZZ+WO>U&$',([> ,0;0-SJ[@*U*B^88]G4
MZ#48[TUL?M.FVJ))'%?^46Z=H5M..)<M#-:,%W#Y3,]LT<*'.[84:#].0T?T
MWBG,-U3SCBI^@RJ!:ZU<9>%2%5C\B0])5J\MWFJ;QP<)KYDYAF3P">(H'A[@
M2_I<DY8O^<]<]Z78,:3[&7R'G-J:Y3@+J 4LFB<,LO?O!J/HRP%]::\O/<2>
MW5+'%8U T"5LM>(!K0?9]FL%JFE>M46]P!SE$DU?8;^D?>!<FUH;YA"XLHUA
M*D<X@B2F93SNO:PNW9H9!,_/<_I_F")K4Q/603H>0CH<OB8C:Z%?<)>2I$G>
M2.N#P^?>\SNS!7L$P:WC:@4E888)W=]3'%@9W=0@Z9??W%D81 F,1SW<H'(0
MCUOS#U<1IOZKGC")8)"F<*<=$__>'L%DDOA43T:P[V7#G8Z3:%;M7+%4M$:Y
MKOEZ:S^ZSKJ.?77OYAZ]R(KJ 0)+@D;')\, 3#=+NH/3==N_2^UH&K3;BL8O
M&N] ]Z76;GOP ?J!GOT&4$L#!!0    ( !2*IEK[2KZ>E (  ,D%   9
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
M.P&Z7RIE=QMGH/^89W\ 4$L#!!0    ( !2*IEI.IP&YJ (  (X&   9
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
M:F= \[E2]J[C%F@?:ZO_ %!+ P04    "  4BJ9:5EX^:[$$  ",#   &0
M 'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6R]5VUOVS80_BL'KQ@<0*U$D7K+
M$@--NF(!UBUHTNVS+)UMHI+HD72<[-?O2+TT:1VGV(!]$5_O[KF7AZ3.]DI_
M-AM$"_=MTYGSV<;:[6D8FFJ#;6G>J"UVM+)2NBTM#?4Z-%N-9>V%VB:,HR@-
MVU)VL\69G[O6BS.ULXWL\%J#V;5MJ1\NL%'[\QF;C1,?Y7ICW42X.-N6:[Q!
M^VE[K6D43EIJV6)GI.I X^I\]I:=7B1NO]_PA\2]>=0'Y\E2J<]N<%6?SR('
M"!NLK--04G.'E]@T3A'!^&O0.9M,.L''_5'[>^\[^;(L#5ZJYD]9V\WY+)]!
MC:MRU]B/:O\+#OYX@)5JC/_"?M@;S:#:&:O:09@0M++KV_)^B,/W",2#0.QQ
M]X8\RG>E+1=G6NU!N]VDS76\JUZ:P,G.)>7&:EJ5)&<7-[BF$%L#\]MRV: Y
M.0LMJ76+836HN.A5Q,^HX/!!=79CX.>NQOJI?$AP)DSQB.DB/JKP0ZG? &<!
MQ%&<'-'')Q^YU\>/^P@?<:NTE=WZD(^]"G%8A:/&J=F6%9[/J/8-ZCN<+7[\
M@:713T< B@F@.*9]<=7U[')EZFO=X73I #.FI^QJFJ]45\E&]CNM AK71!"L
M7<^H1M:EI4%'9)XWRI@3D%VE6CSD\%%(AQV^W6C$)]D&RE6UF9(%EXW:U7"C
M5G9?:H3Y%<'<J)TA^ 3FUI%1M>VNDY7WP=#69M?W;I4M&QAS-;:7C_VZ(1BR
M0@K$'78[A%>0!RR/J7T]]2?;9M(\;G\-:9"G^?"]UJK>579:94$49;2G;Y_8
M';<49*$8Q%D:1$D&OZ(QIV#DNI,K<HH0NTPINT$])@_P?NN21"%KMXUZH!!.
M,SPHXI2^L4@@"UC&R'#;2F,\<!9P$0//8NIE3#A05M,YIO2H 800P/,$\KB
M=TBIJH;J<##*UM7[W_T$CQ(0:0H9&?G]"3YIL35S=@)Q4!2,; G.0 0BCH>D
MT!6@2T><R6Q!0<HA"?*B ":"@B(V9JRON'"HOY56[2CO7<H9%"D)!2R)AN@]
MC=8H/Y@Z@:O.(I7@N *YH"S19YH?0<T+.*$EW_0>?J,KA3E+:7G.(G":'T-=
M(K$01RNVO*>:BE-7747"Z<N"F"6#C%]>8H<K:</Y5JL[Z5)&BBD?)_ ;?AT'
M)^[2^Q*%Q/].H2S(J?AZ"O7]HQ1* B;2X?LMA>(B\11R[7,4$M$@3H43Y^E_
MI9 @7065KL@=LU.>?44A5W&L2!V9LNP@A5@!O,@A9]E+%$J(0CF'G.='*)3D
M/M>)0\;Y,0I1<8D@HW@P'N01_TX*93F(*/5 _A5_7(:2 ^QAO*>/;Y_A3TS+
MF>=/\EW\R1Q].!V:K^CL82^2)\Z>(8_@ HY<M,ETT29'+]H;>M/6.[I7U8I>
M WU%+A]@C6JMR^WFX= ]>53CX7OR198G/=4_==)STA)%C#LBDH#W1PWW9[#/
M4>?33B6410)RJL"^H+X0>+B)7HU\.A2G\-$+L46]]N]@0Z^&76?[Q^(T.SVU
MW_8OS"_;^W<Z.;*65(8-KD@T>I-1@'3_]NT'5FW]>W.I++U>?7=#OPNHW09:
M7REEQX$S,/V +/X!4$L#!!0    ( !2*IEH03'#QVP(  .<*   9    >&PO
M=V]R:W-H965T<R]S:&5E=#,X+GAM;*V6:VO;,!2&_XKP8&RPU9=<>EEB:'IA
MA96%AG4?QCXH]K$MJHLKR77[[R?)B9-!JY2T7V))UGGTZHVE<R:MD'>J M#H
MD5&NID&E=7T2ABJK@&%U(&K@YDTA),/:=&49JEH"SET0HV$21>.08<*#=.+&
MYC*=B$93PF$ND6H8P_)I!E2TTR .U@,WI*RT'0C328U+6(#^5<^EZ84])2<,
MN"*"(PG%-#B-3V;QT :X&;<$6K751G8K2R'N;.<JGP:15004,FT1V#P>X PH
MM22CXWX%#?HU;>!V>TV_=)LWFUEB!6>"_B:YKJ;!48!R*'!#]8UHO\-J0R/+
MRP15[A>UW=QA$J"L45JP5;!1P COGOAQ9<16@.$\'Y"L A*GNUO(J3S'&J<3
M*5HD[6Q#LPVW51=MQ!%N_Y6%EN8M,7$Z79"2DX)DF&MTFF6BX9KP$LT%)1D!
MA3Z=@\:$JL^34)OE;%"8K="S#IV\@!Z@:\%UI= %SR'_/SXT,GNMR5KK+/$"
MK[$\0(/X"TJB9.3A#?J]#QQO^ +OLI&<Z$8"PCQ'E^31MA7Z<PUL"?+O<SOV
M NT).E$USF :F".B0#Y D'[\$(^C;QZYPU[NT"OW' PT(WA) 5'S*:OG!/H1
M0_0$6"J/F%$O9N0EG0E6-QJDL^YG8;X@0!?W#:G-B=5>"[W</2T<]ZK';[?0
MCTB0%FBTT\?#7M'AZWQ<B$*WV'R+/N^\K#V].^J5'KW=.S]BL-.VXU[,L9=T
MQ8UG'-.OC8+76>?E[6E='&UNV>CMYNU@['8OWKKU8R_K!YA,5@F:HRM62_$
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
M256MO&WYVH&R4--F/3&IFK;F\*#:9,KU#>KZGC'Y.M"=6]]XK_X'4$L#!!0
M   ( !2*IEIL*Z/UM@(   X'   9    >&PO=V]R:W-H965T<R]S:&5E=#0W
M+GAM;*U5[V^;,!#]5TY,FC:I"P22KNH2I#;=M'WH5+7:^MF!(U@Q-K--TNZO
MW]D0EDP4:=.^@'_<>W?OC!^+O=);4R):>*J$-,N@M+:^#$.3E5@Q,U$U2MHI
ME*Z8I:G>A*;6R'(/JD081]%Y6#$N@W3AU^YTNE"-%5SBG0;35!73S]<HU'X9
M3(/#PCW?E-8MA.FB9AM\0/NMOM,T"WN6G%<H#5<2-!;+X&IZN9J[>!_PG>/>
M'(W!*5DKM763+_DRB%Q!*#"SCH'1:X<K%,(141D_.LZ@3^F Q^,#^R>OG;2L
MF<&5$H\\M^4RN @@QX(UPMZK_6?L]/@",R6,?\*^C3V?!9 UQJJJ U,%%9?M
MFSUU?3@"7$0O .(.$/\!F+Z4(>D B1?:5N9EW3#+TH56>] NFMC<P/?&HTD-
ME^X4'ZRF74XXF][C#F6#\.8&+>/"P%>F-7.M?;L(+25P86'6D5VW9/$+9 G<
M*FE+ Q]ECODI/J3"^NKB0W77\2CA+=,32*9G$$?Q?*">U3C\!K,>/ALI)^F;
ME7B^9+Q90XUI@;-AH+N*EZ9F&2X#NFL&]0Z#]/6KZ7GT84C5?R([T3CK-<[&
MV-,K01>;R0R!+ (RC3FW()0Q:( 9J%%G*"VH C::5B&C$]=T&6G3H#5#O6D3
M3B.?T=G*+HTFL3O0W;'JX;#DH@\[T3/O]<S_64^.)M.\]GY"@D@;5_F0@O$4
MCPB-Y8+_1&!0T-5Y]XQ,4Q*U7;-LV_&"58#&LK7@I@35:#?C9$3H<N-33<:&
M^6F%9Z[E+O30Y88)L*@K YK)#6G2J@);:D1'[W*#RSUT#*M1$7_[585'EE.A
MWG@G=E]#(VWK/OUJ;_97WN/"W^'MGX(N^89+ P(+@D:3]U2H;MVWG5A5>P-;
M*TMVZ(<E_;!0NP#:+Y2RAXE+T/\"TU]02P,$%     @ %(JF6F0KKQ)8 P
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
M%\UNKB@Q0Y,.$Z>[<,^WVF'7A&&#[QH8'X#[M=;N./&M,[V4Q3]02P,$%
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
MXQV?F'+(IM\W$RW*NF7.A#8-N![FYHI$:0/,_EP(_3RQ7;B[=)-_4$L#!!0
M   ( !2*IEH64?BL* 0  )\;   9    >&PO=V]R:W-H965T<R]S:&5E=#4W
M+GAM;+V97X_B-A3%OXJ5KJI=:3N)32#,%)!F859=J5.-!J9]J/I@P("U2<S:
M!K92/_S:(9.$A+DT$? RY(_O\3T^$/TF[NV$_*I6C&GT/0ICU7=66J_O7%?-
M5BRBZD:L66SN+(2,J#:G<NFJM61TGA1%H4L\K^-&E,?.H)=<>Y*#GMCHD,?L
M22*UB2(J__W$0K'K.]AYO?#,ERMM+[B#WIHNV9CIE_63-&=NIC+G$8L5%S&2
M;-%W[O'=D 2V(!GQ)V<[53A&ULI4B*_VY,N\[WBV(Q:RF;82U'QLV9"%H54R
M?7Q+19UL3EM8/'Y5_YR8-V:F5+&A"/_B<[WJ.UT'S=F";D+]+':_L=10V^K-
M1*B2OVB7CO4<--LH+:*TV'00\7C_2;^G"U$HP/X;!20M(/^WH)46M!*C^\X2
M6R.JZ: GQ0Y).]JHV8-D;9)JXX;'-L:QEN8N-W5Z\/!MP]<F%HT^\YC&,QXO
MT3.;,;ZETY I1.,YN@]-V.8>0^9K@X:2S;E&OPNES/WW(Z8I#Q7R/Z!?T,MX
MA-Z_^X#>(1ZCR4ILE*E7/5>;3NU\[BSMZM.^*_)&5X]4WJ 6_HB(1]I'RH=P
M^8C-LG+_L-PUZY,M$LD6B21Z_AMZ$Z%IB%BV5(MLJ62^5,=<[F4[B:S]06T'
MK: ;]-QMT<N109V 9(,..FYE';? CH<;*6VG:R:YF*.E-&FAG>2:(;%8J"9>
M]A.V"VUV2T9:1XP<M^%G-GS0ALF/H+\?631E\I]C38'E]A%XI]9TQOJ.><8I
M)K?,&?S\$^YXOQ[[4IU)[,!I.W/:OG9@[4I@7BDPL*6&ACN9X<ZI:#$8+5A>
M-]HSB1TX#3*GP;6C#4Y&"[;4T' W,]P]%6T;C!8LKQOMF<0.G-YF3F^O'>WM
MR6C!EAH:QE[."]ZI<'TP7+B^;KKG4CMT6Z C?.V TQF+"7=*"<---36=TPZ&
M<>?)>)5PQJ! [8S/I'9H-T<E?'56PE58*O^*X:::FL[!"I\DJQ8<\5G1ZEQJ
MAVYSN,)7IRM<Q2M2CO@2?(5SP,(P8;W\\67R,$+CR?WD89QEC?Y#)ZD:%JZ=
M_27@"^?TA6'\:OS/&ZY2ED]NRQE? K1P3EH81BTH8QBO8>':&5^"PG".81CF
ML.895W&K6WE27P*X2 Y<! 8N*&(8LV'ANA&?2^UP&7(2(S")-7\'4^4M'Y=?
M7<"3-S57>+\$$Q>4,4S;L'#MC"]!8B0G,0*36/.,J[R% [_\K(9G;^HN1RX"
M(]>;(9_F;5BY=LJ7@#&2PQB!8:QYRE7D\LL/:WCNIMYRYB+-F0OF;5BX=L27
M8"Z2,Q>Y$'.ENL5WR-@+<#GDLT*76]@]L5M7CU0N>:Q0R!9&WKL)S%=*[G>#
M]B=:K),-E:G06D3)X8K1.9-V@+F_$$*_GM@]FFQ/;O #4$L#!!0    ( !2*
MIEI0T6K3(@(  $@%   9    >&PO=V]R:W-H965T<R]S:&5E=#4X+GAM;+54
M78O;,!#\*T*%TD*)_)'D2FH;[I(>+;0EY&C[K-B;6)PL^20EN?OW7<F.22 Y
M^M"^V%II9[0STBH[:/-H:P!'GANI;$YKY]H98[:LH>%VI%M0N++1IN$.0[-E
MMC7 JP!J)$NB:,H:+A0MLC"W-$6F=TX*!4M#[*YIN'FY ZD/.8WI<6(EMK7S
M$ZS(6KZ%!W _VZ7!B TLE6A 6:$5,;#)Z6T\FZ<^/R3\$G"P)V/BE:RU?O3!
MURJGD2\())3.,W#\[6$.4GHB+..IYZ3#EAYX.CZRWP?MJ&7-+<RU_"TJ5^?T
M(R45;/A.NI4^?(%>S\3SE5K:\"6'/C>BI-Q9IYL>C!4T0G5__MS[< *(QU<
M20](_A:0]H#@'.LJ"[(6W/$B,_I C,]&-C\(W@0TJA'*G^*#,[@J$.>*ST\[
MT>*I.'(O%%>E4%NR@A+$GJ\E6,)516XEGC6N <%;0^8&*N'(-VTMKK];@.-"
M6O*#&\/]D;S/F,/"/#TK^R+NNB*2*T5\YV9$TO@#2:)D<@$^?QV^@'* C\_A
M#.T8/$D&3Y+ E_X?3R[I[S8<7][0=^K,MKR$G&(K6C![H,7;-_$T^G3)C7]$
M=N9-.GB3OL9>G.LN.]WRJNZ.+(X"FW]1]D4TBI*;C.U/%5U.F\9#6E<K.[GG
M_HW!>[,5RA()&\1%HYL)):;KVRYPN@U7?ZT=-E(8UOC4@?$)N+[1VAT#WTW#
MXUG\ 5!+ P04    "  4BJ9:<][<BO0"  !L"0  &0   'AL+W=O<FMS:&5E
M=',O<VAE970U.2YX;6RMEEUOFS 4AO^*Q:JID[;RG9 N05J33=O%M*@?V[4+
M)\$J8&J;I/WW.P;""- H%[M),)SWG.?U,3;S/1=/,@%0Y"5+<[DP$J6*:].4
M40(9E5>\@!R?;+C(J,*AV)JR$$#C2I2EIF-9$S.C+#?">75O+<(Y+U7*<E@+
M(LLLH^+U!E*^7QBV<;AQR[:)TC?,<%[0+=R!>BC6 D=FFR5F&>22\9P(V"R,
M+_;UTK:TH(KXS6 O.]=$6WGD_$D/?L0+P])$D$*D= J*?SM80IKJ3,CQW"0U
MVII:V+T^9/]6F4<SCU3"DJ=_6*R2A1$8)(8-+5-UR_??H3'DZWP13V7U2_9U
MK.\8)"JEXEDC1H*,Y?4_?6DFHB.PO3<$3B-PSA6XC<"MC-9DE:T5532<"[XG
M0D=C-GU1S4VE1C<LUVV\4P*?,M2I<"V@H"PF7U]P84B0Y'(%BK)4?B"?R,/=
MBEQ>?" 7A.7D/N&EI'DLYZ;"PEIN1DV1F[J(\T:1GU1<$=?^2!S+\4?DR]/R
M%42MW#N6FVBW]>RTGITJGWNFYS%#=09O/(-^MZYE02-8&/CR2! [,,+W[^R)
M]7G,WG]*=F36;<VZI[*W9B,N"BZH NRE+ 7-(QCS72>;5,GT%K +76=N[KIN
MAB%!T(8<,7HMHW<6H^0;M:<"B)X$%N%JQ/6&.TR!Y&J,MD[K=U"\P._ACL3X
M_CBOW_+Z9_%"5J3\%3I32K"#&2NST37E#TAP0?=HAS'6..ND99V<Q9I3&=-G
MDC*I6+XE&QAM_V10WG=[A,.0-PBG+>'T).$#=IML!2\+DN$VUM"-SN!T4-NV
M^GS#F& R#ABT@,%94R@@'UV%P;"O00]J&-(%/Z*:M52SDU2_5(+S5AR6XHF]
M;#8H/K-Z?,,0V_/&^6SKW]%BG22\YXJF9Q$VB;I[RFS6;^Q(4##MM];L'(7Z
M.P2/GBV^G22%#:JLJREZ%/717@\4+ZK3\9$K/&NKRP0_AT#H 'R^X5P=!OK
M;3^PPK]02P,$%     @ %(JF6@EHR"4S P  ]0P  !D   !X;"]W;W)K<VAE
M971S+W-H965T-C N>&ULK5==3]LP%/TK5H8FD( T:=*OM96@W0?2V"H*[&':
M@YO>$@LG#K;3PK^?G920E-2E4E^:.+GW^)Q[[/JFOV+\480 $CU'-!8#*Y0R
MZ=FV"$*(L#AG"<3JS8+Q"$LUY ^V2#C@>9844=MM-%IVA$EL#?O9LPD?]EDJ
M*8EAPI%(HPCSETN@;#6P'.OUP0UY"*5^8 _["7Z *<B[9,+5R"Y0YB2"6! 6
M(PZ+@77A]$9.4R=D$?<$5J)TC[24&6./>G U'U@-S0@H!%)#8'59P@@HU4B*
MQ],:U"KFU(GE^U?T;YEX)6:&!8P8_4/F,AQ8'0O-88%3*F_8Z@>L!?D:+V!4
M9+]HE<?Z*CA(A631.EDQB$B<7_'SNA"E!,?;DN"N$]R/)C37"5GE[)Q9)FN,
M)1[V.5LAKJ,5FK[):I-E*S4DUC9.)5=OB<J3PPE7*X++%X3C.?KZE))$>231
M\1@D)E2<H#-T-QVCXZ,3=(1(C&Y#E@H5*_JV5--K$#M83W693^5NF>H:\W/4
M=$Z1VW#]FO21.7T,09'N5=-M);I0[A;*W0S/VX+W$X3HH8L@2*.48@ES- :U
M$P*"]?JJDY?CM3(\O3V6PS/7[S;[]K*LHC;*[111%;+-@FS32/:624Q18=9%
MV:Q3] MD'=\<TB\Q:;K=#;8U,5VOGJM7</6,7$<L2E()/%M2OQ<+$D!I9?V]
MAF@&_%\=82.N_D/KB00',+"43P+X$JSAYT].J_&E;C4="*Q2 K\H@6\LP3:C
MOG,F:G>._\X&U_'<#:]V!%68M@JFK8^9-64+N<(<C 89L?8UZ$!@%=GM0G;[
ML :UW]7>[VSN)7-,A6>GX-DQ\KR*E3<QIF>I@(]99,3;UZ(#@56D=POIW<-:
MU'U7?L?;<,@84F'I--X.T,:.<T1U$2&C<W05)9PM0=,41H_,B/N:="BTJOY2
M ^$<UJ<U7N7,V33*'%-E^G;@.^83_QY"$E#8X8T18V]O#H165?S6-3CFMF%_
M;YKONA?'V^QP=@3E7.U23ZH_"%3W]T!B@2@L5%;CO*V\Y7F/G0\D2[(V=<:D
M:GJSVU!]EP#7 >K]@C'Y.M"=;_&E,_P/4$L#!!0    ( !2*IEK)_XPD: (
M -0%   9    >&PO=V]R:W-H965T<R]S:&5E=#8Q+GAM;*U4;6_:,!#^*U96
M3:VTD9!0UC&(5*#3]J$3*NOVV20'L>K8J>T0^N]WMD-&.XHV:5\2O]SSW#WG
MNQLW4CWH L"07<F%G@2%,=4H#'560$EU3U8@\&8M54D-;M4FU)4"FCM0R<,X
MBH9A29D(TK$[6ZAT+&O#F8"%(KHN2ZJ>IL!E,PGZP?[@CFT*8P_"=%S1#2S!
MW%<+A;NP8\E9"4(S*8B"]22X[H]F VOO#'XP:/3!FE@E*RD?[.9K/@DB&Q!P
MR(QEH/C;P@PXMT08QF/+&70N+?!PO6?_[+2CEA75,)/\)\M-,0FN I+#FM;<
MW,GF"[1Z+BU?)KEV7])XV^''@&2U-K)LP1A!R83_TUV;AP, \AP'Q"T@?@D8
MO )(6D#BA/K(G*PY-30=*]D09:V1S2Y<;AP:U3!A7W%I%-XRQ)ETH; @E'DB
M5.3DYK%F%3Z1(>=S,)1Q3;Y1I:C-] 5Y3^Z7<W)^=D'."!/D>R%KC2@]#@T&
M8NG"K'4Z]4[C5YPFY%8*4VAR(W+(G^-#%-"IB/<JIO%)PENJ>B3IOR-Q%%\>
MB6?V]_#!B7"2+JF)XTO^*:G'\N1Y!L=Y; >/=$4SF 38HAK4%H+T[9O^,/IT
M3.1_(GLF>=!)'IQB3^> I!FCKC=AAT-& U9)QFM\85LN&Q"@*'<IH3E6,M/&
M5];>_&@A>:]#Y]5.I&TZQ ?>'LK^T^0JZDR\F/"@04I0&S<W-,ED+8ROLN[4
MCZ8ICB;7PB_.<61=NTX-?]/X>8<UM&%"$PYKI(QZ'[#AE9\A?F-DY=IP)0TV
MM5L6.'9!60.\7TMI]AOKH!ODZ2]02P,$%     @ %(JF6K1+UVG" P  R!
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
M+KJ<8+:J;Y#]Q,C6-:6%--CBW+#&?PHH&X#[*RG-V\3VN>$O5?X!4$L#!!0
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
MH:T?,_4O!%P'J.\KQN1K0U?;[N\J_@M02P,$%     @ %(JF6@0D8HK- @
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
M8\=W7B;F9%TH,^&FHPJO80'JH9H)/7(M2TY*8))PA@2LQLY7?SA)3'P=\)O
M3N[UD7&RY/S1#+[G8\<S@H!"I@P#ULT6)D"I(=(R_K:<CDUI@/O]%_9OM7?M
M98DE3#C]0W)5C)TK!^6PPANJYGQW"ZV?V/!EG,KZBW9-;'3MH&PC%2];L%90
M$M:T^*G=ASV 'QT !"T@^"@@; %A;;115MN:8H73D> [)$RT9C.=>F]JM'9#
MF#G%A1)ZE6B<2N^X HEF^!DO*:#3*2A,J#Q#%^AA,46G)V?H!!&&?A5\(S'+
MY<A5.JO!NEF;X:;)$!S(\!.+2Q3ZYRCP@K@'/CD.GT)FX=%KN*N]6L.!-1S4
M?.%'#/>Y:>!1/]Q<JJ&L< 9C1]\:"6(+3OKYDS_POO1Y^T]DKYR&UFEXC#V=
M \4*<E1AH9X1T[YU]Z#MAFM0<YFKOTW#*[W?VWTWW9@HN;(QKT1&5F1T5.2]
M*D"\*Z[AB/<27_MOM'5#?#_JUQ9;;?%1;>_^*G$G9Y3$;W1U8^+KH%_7P.H:
M'-7U Z0<HLE&"& *O:MRT%%PT979&W3@;!.K,_GX_IVC._TFW:^L[AD7II#W
M*4XZ_YGW1FXWHGO:[EY5-"^2+D1KPB2BL-(H[S+1;D53Y9N!XE5=*)=<Z;);
M=PO],((P 7I]Q;6A=F!JKWUJTW]02P,$%     @ %(JF6M]-UBDX @  $08
M !D   !X;"]W;W)K<VAE971S+W-H965T-S N>&ULC95=;]HP%(;_BI554RM-
MY(-\C2611M&T7FQ"I=VN37(@5AT[LPVT_WZVDT9L38$;XF/[?9_7D&.R Q=/
ML@90Z+FA3.9.K50[<UU9UM!@.>$M,+VRX:+!2I=BZ\I6 *ZLJ*%NX'FQVV#"
MG"*S<TM19'RG*&&P%$CNF@:+ESE0?L@=WWF=N"?;6ID)M\A:O(45J,=V*73E
M#BX5:8!)PAD2L,F=K_YLGIK]=L,O @=Y-$;F)&O.GTQQ5^6.9P(!A5(9!ZP?
M>[@%2HV1CO&G]W0&I!$>CU_=O]FSZ[.LL81;3G^32M6YDSJH@@W>477/#]^A
M/T]D_$I.I?U$AVYOJ(GE3BK>]&)=-X1U3_S<?P]'@B!X1Q#T@L#F[D VY0(K
M7&2"'Y PN[6;&=BC6K4.1YCY459*Z%6B=:KXR15(M,0O>$T!72] 84(E\F_0
M%2(,/=1\)S&K9.8J33,:M^R=YYUS\([S#RPF:.I_0H$71.AQM4#75S?_VK@Z
M[) X&!('UG=Z2>*Q6)T\')>;EWPF6UQ"[NBW6(+8@U-\_.#'WI<3X:9#N.DI
M]\*>58#I!L*V8^DZ?6SUIF/VQ33V,W<_ @T':'@.&H^A.E5TA/+]<!P5#:CH
M'"H90T5O4-XX*!Y \3E0.@:*+P4E R@Y!_H\!DHN!:4#*#T)>N *TS%2^N:-
M")/H/Y9[U.'FLM3-M25,(@H;K?(FB0XJN@NH*Q1O;=.ON=)7B!W6^LX&83;H
M]0W7;=07YAX9_@6*OU!+ P04    "  4BJ9:I#; '4\$  !G&   &0   'AL
M+W=O<FMS:&5E=',O<VAE970W,2YX;6RM65&/XC80_BM66E5W4KN)DP#9+2#M
M0DZ]A]WC=GOM0]4' [,071)SMH%#ZH^O[61#0H)WT?D%G,3?-^-OS&3&#/>4
M?>5K (&^9VG.1\Y:B,V-Z_+%&C+"K^@&<OGDF;*,"'G)5B[?,"!+#<I2U_>\
MOIN1)'?&0WUOQL9#NA5IDL.,(;[-,L(.=Y#2_<C!SLN-QV2U%NJ&.QYNR J>
M0'S9S)B\<BN699)!SA.:(P;/(^<6W\2XKP!ZQE\)['EMC-12YI1^51<?ER/'
M4QY!"@NA*(C\VL$$TE0Q23^^E:1.95,!Z^,7]@]Z\7(Q<\)A0M._DZ58CYS(
M04MX)MM4/-+]'U NJ*?X%C3E^A/MB[F#OH,66RYH5H*E!UF2%]_D>RE$#8##
M,P"_!/BG@-X90% "@K=:"$M ^%9 KP3HI;O%VK5P4R+(>,CH'C$U6[*I@59?
MHZ5>2:XVRI-@\FDB<6+\0 5P-",',D\!O9N"($G*T0-AC*@0OD>_H2]/4_3N
MY_=#5TB#"N8N2O))0>Z?(0_0/<W%FJ,X7\*RB7>EHY6W_HNW=[Z1\('NKI"'
M?T6^Y_M=_ICA]X1=H:" ]SK@T[?#PPYX;(9/87$.WA CJ$(7:+[P#-\CI$3
M$FT($P>4RT#*H8YCAV]W1BZ5CF[XABQ@Y,A\PX'MP!G_\A/N>[]WR5R0]369
M2D6[<1"%GN<-W5U=3ILVX[;-<!#5;39$#"L10Z.(GW+T >9L*Y,D\@<Z-D&7
M?$:62^6S23:U219;(FN$HE>%HF<,Q>V* <AWD$!_ LNZ@F#$7QH$LS,!.@!A
MO$MPFU[$EL@:@O<KP?O&-<X8S1+.*2NR1Y?B1H)+%>^W?L%^\Q=<Z&O39FR)
MK*'OH-)W8-3W8RY L@KT2+K5-<(O5;<@PUY-7N_*Z_>B$WEM&HTMD37DC2IY
M(Z.\GV72%I >5/6BTD:7PD:&2Q6.6OLWZH7!Z?:U:3*V1-;0][K2]]J<C],4
M5@F1^?@!A.Y<T'S+Y23.97W_;9OP1-?Z_]Q#-@?V+_H/R?I,CQ'6%5KUJ"LT
M1N.7AL8FV=0F66R)K!%![!VK>\]BC6@FNS0F)5OOM2K1JM6X9'MKG8AKC1+^
MP?+D%8+S)<7$C+QT_UIEBVVQ-67WC[+[/UJDE SUD&/L>:V=-C&;NEAFFVRQ
M+;:FS,=>$IN;R5=KE1)_W2POPE.%;;9\4ZMLL2VVIL+'1A.;.\VWE"LE17TG
M7T=!A%L;V6H':94MML76E/G81&)SXS9C2;Y(-B1%)*-;F:TW)%EV:FVUFRS9
MZB^[Z[#UINNUPWN:I&);?C7U._:$V-P45HG@K&Y6>T+<;@K;LK7G1"W5K#9Z
M;NU -0.VTB?9'"W4ABI.*ZN[Q6GY!-],]:'RR?U;?'.KSX[=(TUQ!']/V"K)
M.4KA65)Z5P,9=E:<:A<7@F[TL>V<"D$S/5P#60)3$^3S9RI?A^6%,E#]MS#^
M'U!+ P04    "  4BJ9:G1BE7Z@"  #>!@  &0   'AL+W=O<FMS:&5E=',O
M<VAE970W,BYX;6R556U/VS 0_BNG#$T@H29-25NQ-A*%H2&-#<'8/KO)M;'P
M2V8[+?S[G9,VZ[00P9?$=NYY[O&]9;;5YLD6B Z>I5!V'A3.E>=A:+,");,#
M7:*B+RMM)'.T->O0E@997H.D".,H&H>2<16DL_KLSJ0S73G!%=X9L)64S+PL
M4.CM/!@&^X-[OBZ</PC36<G6^(#NL;PSM M;EIQ+5)9K!097\^!B>+Z8>OO:
MX"?'K3U8@[_)4NLGO[G)YT'D!:' S'D&1J\-7J(0GHAD_-YQ!JU+#SQ<[]FO
MZ[O379;,XJ46OWCNBGDP#2#'%:N$N]?;+[B[3^+Y,BUL_81M8YM$ 625=5KN
MP*1 <M6\V?,N#@> .'X%$.\ <:V[<52KO&*.I3.CMV"\-;'Y17W5&DWBN/))
M>7"&OG+"N?0K[4&OX-)@SAT<7Z%C7%CXQHQA/F G< 1<P8]"5Y:IW,Y"1VX]
M.,QV+A:-B_@5%R.XU<H5%CZK'/-_\2');37'>\V+N)?PEID!C(:G$$=Q H\/
M5W!\=-+#.VIC,:IY1V^*1==%&_Q9-][WS[DM68;S@!K$HME@D'[\,!Q'GWK4
MG;7JSOK8T^^5LXXRP-6:ZE PE6&7Q(9D7)/XCMRDT2S<=/A-6K])K]]]5+*F
M0K;<%<!\"7)922@-5QDOF0 F=:4ZHY;\)VD2O2)JW(H:OT<4/I?<O(!#([L$
M]'-=XW( \>04?#V->S(U:<5-WB-NB<Q8ZB%2A]8!M55GXAK.8728N4$4)=V!
MFK9:IKU:[M%/9E\S;$.-S98"@48Y++4A)CKODC)]0\+"@YDCT:SKR6HA\T70
MC)_VM!W>%\W,^FO>3'[JYS57%@2N"!H-)E0PIIFFS<;ILIY@2^UH'M;+@GY
M:+P!?5]I[?8;[Z#]I:5_ %!+ P04    "  4BJ9:MABT=.X"  !<"@  &0
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
M^"C-K5C$79QWDI\"Y[CA.78#_1_)B"V@;Q<Z!>AQ0WKL1GT_-.(N\CLWZA3
MQPWQL1OY_T/&<7?ST2[7O21LOAF4D?V]S:[YI4%O,U>4293!4HN"LZ%>/5%N
MWLN!XIMB_WO+E=Y-%X=K( L0Y@+]_I)S]3 P6^KZ)Y3T#U!+ P04    "  4
MBJ9:G,N2\VL"  "L!@  &0   'AL+W=O<FMS:&5E=',O<VAE970W-BYX;6RM
M56MOTS 4_2M704(@L>;11Z:21%I7)B8Q477 /KO);6(MMH/MMNN_QW;:4% 7
MAN!+XFO?<^XY<7R=[(1\5!6BAB=6<Y5ZE=;-U/=57B$C:B :Y&9E+20CVH2R
M]%4CD10.Q&H_"H*)SPCE7I:XN87,$K'1->6XD* VC!&YGV$M=JD7>L>))2TK
M;2?\+&E(B?>HOS8+:2*_8RDH0ZZHX"!QG7I7X706VWR7\(WB3IV,P3I9"?%H
M@]LB]0(K"&O,M64@YK7%:ZQK2V1D?#]P>EU)"SP=']EOG'?C94447HOZ@1:Z
M2KU+#PI<DTVMEV+W$0]^QI8O%[5R3]BUN>/8@WRCM& 'L%' *&_?Y.GP'4X
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
M4G5KLRS4/ 6N ]3[-6-RM]$)^@F=_ 902P,$%     @ %(JF6MNGU?LI P
M2A(   T   !X;"]S='EL97,N>&ULW5A=:]LP%/TK1EU'"Z-.XL6-UR2P!0J#
M;13:A[T5)983@2QYLM(E^_73E1SGH[JEZ\/6S"&U=(_.N4?2=64RK,U:L-L%
M8R9:E4+6([(PIOH0Q_5LP4I:7ZB*28L42I?4V*Z>QW6E&<UK()4B[G4Z:5Q2
M+LEX*)?E=6GJ:*:6THQ(OPU%_O8Y'Y%N^IY$7FZB<C8B]V=O?RR5N7H3^?O)
MNY.3SOWYU6'\S 'G) Z*]I\A>M'IX,( 8N+I\\2?TL:D+_>EW?!3*^2)IQAM
M$*#9+%LF=!PY;C9E/"R4W.Y-0GS JM.210]4C,B$"C[5'%@%+;E8^W / C,E
ME(Z,+0J;K@N1^I>'N[X']=+HE%PJ[7+[#/[OM!E^ &QZ8) +T1KL$1\8#RMJ
M#-/RVG;<8!=\!$5-^VY=68=S3=?=7I]L">YFDTR5SIENTW3))C0>"E: '<WG
M"[@;5<4 &J-*V\@YG2M)G8<-HVE8V1D3XA8>IN_%GO:JV-FW#NR:;)O64-/T
M,KX#^KMJ7GM7]F6Z4<4?E/FTM-.1K@\%RFXT*_C*]5=%:P!3[^+JM*K$^J/@
M<UDR/_EG)QP/Z887+93FOVPV*)69#3!-H@>F#9_M1GYJ6MVQE=F4TZK /?>.
MT//?7><YDTQ3L6O:UOYK7N47.TXN_Y5E]U_ET'#08W-"OG:3_6,PF1Z#R:.H
MR<&K-!DW9^/. ;QW_+;1"%YS1N0;O#2);=)HNN3"<-GT%CS/F7QT"EMY0Z?V
M17E/WX[/64&7PMRUX(ALVU]9SI=EUHZZ@85H1FW;7V!ZW;1]Q[*YN,S9BN63
MIJOG4]>,;,-F;2X@'"+7[@HC&,=C800P+ _F .-X%I;G?YK/ )V/QS!O@R R
M0#D#E.-9(63B/EB>,">S5WBF698D:8JMZ&02=##!UBU-X1M6P[P! \L#F?YL
MK?'=QBODZ3K ]O2I"L%FBE<B-E-\K0$)KQLPLBR\VU@>8&"[@-4.Y _G@9H*
M<Y($=A7SACW!.))E& *U&*[1-$56)X5/>'^PIR1)LBR, !9VD"08 D\CCF .
MP .&)(D[!P_.HWAS3L7;7X_&OP%02P,$%     @ %(JF6I>*NQS     $P(
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
ME[\NOW9.;L(5Y_J^8GC^"U!+ P04    "  4BJ9:1.3?6!X"  "7+@  $P
M %M#;VYT96YT7U1Y<&5S72YX;6S-VM].VS 4!O!7J7*+&M?_RT2YV;C=N-@+
M>,DIC9K$EFV@O/V<%) VL0I4I'TWC5K;YSOQD7Y7O?KY%"@M#D,_IDVURSE\
M82PU.QI<JGV@L:QL?1Q<+E_C'0NNV;L[8F*U,JSQ8Z8Q+_-4H[J^^D9;=]_G
MQ<VA_)PZ/VZJ2'VJ%E^/&Z>L3>5"Z+O&Y;+.'L;VKY3E<T)=3LY[TJX+Z:)L
MJ-B;"=/*OP.>S_UXH!B[EA:W+N;O;BB[V*%G*3_UE.K3)=[HT6^W74.M;^Z'
M<J1.(9)KTXXH#WU]+'IQ.CF7&Z;C)S\[?RYS*K#LO(T^I#*Q2!^/>QG)='H9
M2B&*N3O]BJ^)I?39[T?3M%MJWYE=KO?1Q_T\C\3FQ_EW_.>,7^M_L \!TH<$
MZ4.!]*%!^C @?5B0/M8@?5R"],%7*(V@B,I12.4HIG(45#F*JAR%58[B*D>!
ME:/(*E!D%2BR"A19!8JL D56@2*K0)%5H,@J4&05*+)*%%DEBJP215:)(JM$
MD56BR"I19)4HLDH4626*K I%5H4BJT*15:'(JE!D52BR*A19%8JL"D56A2*K
M1I%5H\BJ4635*+)J%%DUBJP:15:-(JM&D56CR&I09#4HLAH460V*K 9%5H,B
MJT&1U:#(:E!D-2BR6A19+8JL%D56BR*K19'5HLAJ462U*+):%%DMBJQK%%G7
M_U/67][O/SE^?M:#Z\:7?#;_'_WZ-U!+ 0(4 Q0    ( !2*IEI&QTU(E0
M ,T    0              "  0    !D;V-0<F]P<R]A<' N>&UL4$L! A0#
M%     @ %(JF6OLHU:3S    *P(  !$              ( !PP   &1O8U!R
M;W!S+V-O<F4N>&UL4$L! A0#%     @ %(JF6IE<G",0!@  G"<  !,
M         ( !Y0$  'AL+W1H96UE+W1H96UE,2YX;6Q02P$"% ,4    "  4
MBJ9:98)/6I\%  #F'0  &               @($F"   >&PO=V]R:W-H965T
M<R]S:&5E=#$N>&UL4$L! A0#%     @ %(JF6K-+&LDU!P  X"   !@
M         ("!^PT  'AL+W=O<FMS:&5E=',O<VAE970R+GAM;%!+ 0(4 Q0
M   ( !2*IEI01%8;9P,   @,   8              " @685  !X;"]W;W)K
M<VAE971S+W-H965T,RYX;6Q02P$"% ,4    "  4BJ9:78!@D&\%  #R%P
M&               @($#&0  >&PO=V]R:W-H965T<R]S:&5E=#0N>&UL4$L!
M A0#%     @ %(JF6@,/ "7E @  "@D  !@              ("!J!X  'AL
M+W=O<FMS:&5E=',O<VAE970U+GAM;%!+ 0(4 Q0    ( !2*IEI,C_9," 8
M '8B   8              " @<,A  !X;"]W;W)K<VAE971S+W-H965T-BYX
M;6Q02P$"% ,4    "  4BJ9:&D1Q4P<'  "X'@  &               @($!
M*   >&PO=V]R:W-H965T<R]S:&5E=#<N>&UL4$L! A0#%     @ %(JF6E\@
MQ,"^#   ]"0  !@              ("!/B\  'AL+W=O<FMS:&5E=',O<VAE
M970X+GAM;%!+ 0(4 Q0    ( !2*IEI[I[J:OPT  /HK   8
M  " @3(\  !X;"]W;W)K<VAE971S+W-H965T.2YX;6Q02P$"% ,4    "  4
MBJ9:= AQ+N$#  !U"0  &0              @($G2@  >&PO=V]R:W-H965T
M<R]S:&5E=#$P+GAM;%!+ 0(4 Q0    ( !2*IEHP9%KJ=0,  -H(   9
M          " @3].  !X;"]W;W)K<VAE971S+W-H965T,3$N>&UL4$L! A0#
M%     @ %(JF6M*1K,[U!P  EA4  !D              ("!ZU$  'AL+W=O
M<FMS:&5E=',O<VAE970Q,BYX;6Q02P$"% ,4    "  4BJ9:^A"A5Z<"   6
M!@  &0              @($76@  >&PO=V]R:W-H965T<R]S:&5E=#$S+GAM
M;%!+ 0(4 Q0    ( !2*IEI6EI#-[@(  )L&   9              " @?5<
M  !X;"]W;W)K<VAE971S+W-H965T,30N>&UL4$L! A0#%     @ %(JF6DV0
MYL>?!   9@P  !D              ("!&F   'AL+W=O<FMS:&5E=',O<VAE
M970Q-2YX;6Q02P$"% ,4    "  4BJ9:T O<;90#  !P"   &0
M    @('P9   >&PO=V]R:W-H965T<R]S:&5E=#$V+GAM;%!+ 0(4 Q0    (
M !2*IEKZ-MSO<00  $X*   9              " @;MH  !X;"]W;W)K<VAE
M971S+W-H965T,3<N>&UL4$L! A0#%     @ %(JF6AS:D*G> @  9 8  !D
M             ("!8VT  'AL+W=O<FMS:&5E=',O<VAE970Q."YX;6Q02P$"
M% ,4    "  4BJ9:M[)CT>D"  #[!@  &0              @(%X<   >&PO
M=V]R:W-H965T<R]S:&5E=#$Y+GAM;%!+ 0(4 Q0    ( !2*IEI9G-*%G@8
M %$1   9              " @9AS  !X;"]W;W)K<VAE971S+W-H965T,C N
M>&UL4$L! A0#%     @ %(JF6MYO-(9["@  +R   !D              ("!
M;7H  'AL+W=O<FMS:&5E=',O<VAE970R,2YX;6Q02P$"% ,4    "  4BJ9:
M2W#"=DP(  #D%0  &0              @($?A0  >&PO=V]R:W-H965T<R]S
M:&5E=#(R+GAM;%!+ 0(4 Q0    ( !2*IEJ0'&>J2@<  + 4   9
M      " @:*-  !X;"]W;W)K<VAE971S+W-H965T,C,N>&UL4$L! A0#%
M  @ %(JF6@C#+8?8#@  Z3<  !D              ("!(Y4  'AL+W=O<FMS
M:&5E=',O<VAE970R-"YX;6Q02P$"% ,4    "  4BJ9:JF7]VKH"  "#!@
M&0              @($RI   >&PO=V]R:W-H965T<R]S:&5E=#(U+GAM;%!+
M 0(4 Q0    ( !2*IEJO6C4J<08  )(3   9              " @2.G  !X
M;"]W;W)K<VAE971S+W-H965T,C8N>&UL4$L! A0#%     @ %(JF6O/CVP<J
M P  IP<  !D              ("!RZT  'AL+W=O<FMS:&5E=',O<VAE970R
M-RYX;6Q02P$"% ,4    "  4BJ9:7Y-^&<X"  !B!P  &0
M@($LL0  >&PO=V]R:W-H965T<R]S:&5E=#(X+GAM;%!+ 0(4 Q0    ( !2*
MIEJL@]J*#P0  ",,   9              " @3&T  !X;"]W;W)K<VAE971S
M+W-H965T,CDN>&UL4$L! A0#%     @ %(JF6M.KKM26 @  W 4  !D
M         ("!=[@  'AL+W=O<FMS:&5E=',O<VAE970S,"YX;6Q02P$"% ,4
M    "  4BJ9:^TJ^GI0"  #)!0  &0              @(%$NP  >&PO=V]R
M:W-H965T<R]S:&5E=#,Q+GAM;%!+ 0(4 Q0    ( !2*IEH$"=-M>P,   <)
M   9              " @0^^  !X;"]W;W)K<VAE971S+W-H965T,S(N>&UL
M4$L! A0#%     @ %(JF6JZ=UZXD P  I <  !D              ("!P<$
M 'AL+W=O<FMS:&5E=',O<VAE970S,RYX;6Q02P$"% ,4    "  4BJ9:3J<!
MN:@"  ".!@  &0              @($<Q0  >&PO=V]R:W-H965T<R]S:&5E
M=#,T+GAM;%!+ 0(4 Q0    ( !2*IEHMN?'\E0(  /4%   9
M  " @?O'  !X;"]W;W)K<VAE971S+W-H965T,S4N>&UL4$L! A0#%     @
M%(JF6AUU]RJ= P  N D  !D              ("!Q\H  'AL+W=O<FMS:&5E
M=',O<VAE970S-BYX;6Q02P$"% ,4    "  4BJ9:5EX^:[$$  ",#   &0
M            @(&;S@  >&PO=V]R:W-H965T<R]S:&5E=#,W+GAM;%!+ 0(4
M Q0    ( !2*IEH03'#QVP(  .<*   9              " @8/3  !X;"]W
M;W)K<VAE971S+W-H965T,S@N>&UL4$L! A0#%     @ %(JF6FM_D>O  @
M!PH  !D              ("!E=8  'AL+W=O<FMS:&5E=',O<VAE970S.2YX
M;6Q02P$"% ,4    "  4BJ9:RV<->@X$  #S$   &0              @(&,
MV0  >&PO=V]R:W-H965T<R]S:&5E=#0P+GAM;%!+ 0(4 Q0    ( !2*IEJQ
M A3\^@4  (P?   9              " @='=  !X;"]W;W)K<VAE971S+W-H
M965T-#$N>&UL4$L! A0#%     @ %(JF6@&%W<US @  @08  !D
M     ("! N0  'AL+W=O<FMS:&5E=',O<VAE970T,BYX;6Q02P$"% ,4
M"  4BJ9:E[M$K( #  #\#   &0              @(&LY@  >&PO=V]R:W-H
M965T<R]S:&5E=#0S+GAM;%!+ 0(4 Q0    ( !2*IEK+\X:860(  $D&   9
M              " @6/J  !X;"]W;W)K<VAE971S+W-H965T-#0N>&UL4$L!
M A0#%     @ %(JF6I8^/@]I @  4 8  !D              ("!\^P  'AL
M+W=O<FMS:&5E=',O<VAE970T-2YX;6Q02P$"% ,4    "  4BJ9:37W\'*4#
M  "$#P  &0              @(&3[P  >&PO=V]R:W-H965T<R]S:&5E=#0V
M+GAM;%!+ 0(4 Q0    ( !2*IEIL*Z/UM@(   X'   9              "
M@6_S  !X;"]W;W)K<VAE971S+W-H965T-#<N>&UL4$L! A0#%     @ %(JF
M6F0KKQ)8 P  /@H  !D              ("!7/8  'AL+W=O<FMS:&5E=',O
M<VAE970T."YX;6Q02P$"% ,4    "  4BJ9:,<3SKU@"  "F!0  &0
M        @('K^0  >&PO=V]R:W-H965T<R]S:&5E=#0Y+GAM;%!+ 0(4 Q0
M   ( !2*IEJ?>B_EJP(  'D(   9              " @7K\  !X;"]W;W)K
M<VAE971S+W-H965T-3 N>&UL4$L! A0#%     @ %(JF6BC+W:B+ @  I08
M !D              ("!7/\  'AL+W=O<FMS:&5E=',O<VAE970U,2YX;6Q0
M2P$"% ,4    "  4BJ9:!?,S^"8"   U!0  &0              @($> @$
M>&PO=V]R:W-H965T<R]S:&5E=#4R+GAM;%!+ 0(4 Q0    ( !2*IEI#UQ>S
MZ0(  (4)   9              " @7L$ 0!X;"]W;W)K<VAE971S+W-H965T
M-3,N>&UL4$L! A0#%     @ %(JF6FU+NWB  @  ]P8  !D
M ("!FP<! 'AL+W=O<FMS:&5E=',O<VAE970U-"YX;6Q02P$"% ,4    "  4
MBJ9:MD8%6,@"   )"   &0              @(%2"@$ >&PO=V]R:W-H965T
M<R]S:&5E=#4U+GAM;%!+ 0(4 Q0    ( !2*IEKRU<6:C@(  ( '   9
M          " @5$- 0!X;"]W;W)K<VAE971S+W-H965T-38N>&UL4$L! A0#
M%     @ %(JF6A91^*PH!   GQL  !D              ("!%A ! 'AL+W=O
M<FMS:&5E=',O<VAE970U-RYX;6Q02P$"% ,4    "  4BJ9:4-%JTR("  !(
M!0  &0              @(%U% $ >&PO=V]R:W-H965T<R]S:&5E=#4X+GAM
M;%!+ 0(4 Q0    ( !2*IEISWMR*] (  &P)   9              " @<X6
M 0!X;"]W;W)K<VAE971S+W-H965T-3DN>&UL4$L! A0#%     @ %(JF6@EH
MR"4S P  ]0P  !D              ("!^1D! 'AL+W=O<FMS:&5E=',O<VAE
M970V,"YX;6Q02P$"% ,4    "  4BJ9:R?^,)&@"  #4!0  &0
M    @(%C'0$ >&PO=V]R:W-H965T<R]S:&5E=#8Q+GAM;%!+ 0(4 Q0    (
M !2*IEJT2]=IP@,  ,@0   9              " @0(@ 0!X;"]W;W)K<VAE
M971S+W-H965T-C(N>&UL4$L! A0#%     @ %(JF6HCZB#9D @  L08  !D
M             ("!^R,! 'AL+W=O<FMS:&5E=',O<VAE970V,RYX;6Q02P$"
M% ,4    "  4BJ9:KQ]?F74"   2!P  &0              @(&6)@$ >&PO
M=V]R:W-H965T<R]S:&5E=#8T+GAM;%!+ 0(4 Q0    ( !2*IEI;!T];?0,
M $<,   9              " @4(I 0!X;"]W;W)K<VAE971S+W-H965T-C4N
M>&UL4$L! A0#%     @ %(JF6I04RYT$ P  :0D  !D              ("!
M]BP! 'AL+W=O<FMS:&5E=',O<VAE970V-BYX;6Q02P$"% ,4    "  4BJ9:
M!"1BBLT"  !J"   &0              @($Q, $ >&PO=V]R:W-H965T<R]S
M:&5E=#8W+GAM;%!+ 0(4 Q0    ( !2*IEIVB(Q>2P(  )H%   9
M      " @34S 0!X;"]W;W)K<VAE971S+W-H965T-C@N>&UL4$L! A0#%
M  @ %(JF6NI(^J6# @  =@<  !D              ("!MS4! 'AL+W=O<FMS
M:&5E=',O<VAE970V.2YX;6Q02P$"% ,4    "  4BJ9:WTW6*3@"   1!@
M&0              @(%Q. $ >&PO=V]R:W-H965T<R]S:&5E=#<P+GAM;%!+
M 0(4 Q0    ( !2*IEJD-L =3P0  &<8   9              " @> Z 0!X
M;"]W;W)K<VAE971S+W-H965T-S$N>&UL4$L! A0#%     @ %(JF6IT8I5^H
M @  W@8  !D              ("!9C\! 'AL+W=O<FMS:&5E=',O<VAE970W
M,BYX;6Q02P$"% ,4    "  4BJ9:MABT=.X"  !<"@  &0
M@(%%0@$ >&PO=V]R:W-H965T<R]S:&5E=#<S+GAM;%!+ 0(4 Q0    ( !2*
MIEH\"S.FWP(  (@)   9              " @6I% 0!X;"]W;W)K<VAE971S
M+W-H965T-S0N>&UL4$L! A0#%     @ %(JF6NFJ'J5X P  3A$  !D
M         ("!@$@! 'AL+W=O<FMS:&5E=',O<VAE970W-2YX;6Q02P$"% ,4
M    "  4BJ9:G,N2\VL"  "L!@  &0              @($O3 $ >&PO=V]R
M:W-H965T<R]S:&5E=#<V+GAM;%!+ 0(4 Q0    ( !2*IEH!O5$#\@(  )0)
M   9              " @=%. 0!X;"]W;W)K<VAE971S+W-H965T-S<N>&UL
M4$L! A0#%     @ %(JF6D4+G]!^!P  O"P  !D              ("!^E$!
M 'AL+W=O<FMS:&5E=',O<VAE970W."YX;6Q02P$"% ,4    "  4BJ9:IS%:
M/L4%  #1%0  &0              @(&O60$ >&PO=V]R:W-H965T<R]S:&5E
M=#<Y+GAM;%!+ 0(4 Q0    ( !2*IEJHN@F5K <  -8O   9
M  " @:M? 0!X;"]W;W)K<VAE971S+W-H965T.# N>&UL4$L! A0#%     @
M%(JF6@:X$TZ; @  K0<  !D              ("!CF<! 'AL+W=O<FMS:&5E
M=',O<VAE970X,2YX;6Q02P$"% ,4    "  4BJ9:VZ?5^RD#  !*$@  #0
M            @ %@:@$ >&PO<W1Y;&5S+GAM;%!+ 0(4 Q0    ( !2*IEJ7
MBKL<P    !,"   +              "  ;1M 0!?<F5L<R\N<F5L<U!+ 0(4
M Q0    ( !2*IEH_Y/SW9 4  +8T   /              "  9UN 0!X;"]W
M;W)K8F]O:RYX;6Q02P$"% ,4    "  4BJ9:JYPQ2VX"  #:+P  &@
M        @ $N= $ >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"% ,4
M    "  4BJ9:1.3?6!X"  "7+@  $P              @ '4=@$ 6T-O;G1E
C;G1?5'EP97-=+GAM;%!+!08     60!9 &88   C>0$    !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>95
<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>96
<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>98
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.25.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>162</ContextCount>
  <ElementCount>415</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>65</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>4</UnitCount>
  <MyReports>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000001 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>110200 - Statement - Condensed Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/CondensedConsolidatedBalanceSheets</Role>
      <ShortName>Condensed Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>110201 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>124100 - Statement - Condensed Consolidated Statements of Operations (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited</Role>
      <ShortName>Condensed Consolidated Statements of Operations (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>148400 - Statement - Condensed Consolidated Statements of Comprehensive Income(Loss) (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited</Role>
      <ShortName>Condensed Consolidated Statements of Comprehensive Income(Loss) (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>148600 - Statement - Consolidated Statements of Stockholders' Equity (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited</Role>
      <ShortName>Consolidated Statements of Stockholders' Equity (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>170000 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited</Role>
      <ShortName>Condensed Consolidated Statements of Cash Flows (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>290000 - Disclosure - Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/SignificantAccountingPolicies</Role>
      <ShortName>Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>290001 - Disclosure - Revenue</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/Revenue</Role>
      <ShortName>Revenue</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>290002 - Disclosure - Earnings Per Common Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/EarningsPerCommonShare</Role>
      <ShortName>Earnings Per Common Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>290003 - Disclosure - Trade Receivables and Allowance for Credit Losses</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLosses</Role>
      <ShortName>Trade Receivables and Allowance for Credit Losses</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>290004 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLosses</Role>
      <ShortName>Equipment Financing Receivables and Allowance for Credit Losses</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>290005 - Disclosure - Prepaid Expenses</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/PrepaidExpenses</Role>
      <ShortName>Prepaid Expenses</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>290006 - Disclosure - Property and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/PropertyAndEquipment</Role>
      <ShortName>Property and Equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>370000 - Disclosure - Intangible Assets and Goodwill</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/IntangibleAssetsAndGoodwill</Role>
      <ShortName>Intangible Assets and Goodwill</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>400000 - Disclosure - Accrued Expenses</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/AccruedExpenses</Role>
      <ShortName>Accrued Expenses</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>460000 - Disclosure - Notes Payable</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://cxdo.com/role/NotesPayable</Role>
      <ShortName>Notes Payable</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>460001 - Disclosure - Line of Credit</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/LineOfCredit</Role>
      <ShortName>Line of Credit</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>815000 - Disclosure - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/FairValueMeasurements</Role>
      <ShortName>Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>815001 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>842000 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/Leases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>842001 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/CommitmentsAndContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>842002 - Disclosure - Segment Reporting</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/SegmentReporting</Role>
      <ShortName>Segment Reporting</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>842003 - Disclosure - Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/SignificantAccountingPoliciesPolicies</Role>
      <ShortName>Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://cxdo.com/role/SignificantAccountingPolicies</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>842004 - Disclosure - Significant Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/SignificantAccountingPoliciesTables</Role>
      <ShortName>Significant Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://cxdo.com/role/SignificantAccountingPolicies</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>842005 - Disclosure - Revenue (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/RevenueTables</Role>
      <ShortName>Revenue (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://cxdo.com/role/Revenue</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>842006 - Disclosure - Earnings Per Common Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/EarningsPerCommonShareTables</Role>
      <ShortName>Earnings Per Common Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://cxdo.com/role/EarningsPerCommonShare</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>842007 - Disclosure - Trade Receivables and Allowance for Credit Losses (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables</Role>
      <ShortName>Trade Receivables and Allowance for Credit Losses (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLosses</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>842008 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables</Role>
      <ShortName>Equipment Financing Receivables and Allowance for Credit Losses (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLosses</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>842009 - Disclosure - Prepaid Expenses (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/PrepaidExpensesTables</Role>
      <ShortName>Prepaid Expenses (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://cxdo.com/role/PrepaidExpenses</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>842010 - Disclosure - Property and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/PropertyAndEquipmentTables</Role>
      <ShortName>Property and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://cxdo.com/role/PropertyAndEquipment</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>842011 - Disclosure - Intangible Assets and Goodwill (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/IntangibleAssetsAndGoodwillTables</Role>
      <ShortName>Intangible Assets and Goodwill (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://cxdo.com/role/IntangibleAssetsAndGoodwill</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>842012 - Disclosure - Accrued Expenses (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/AccruedExpensesTables</Role>
      <ShortName>Accrued Expenses (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://cxdo.com/role/AccruedExpenses</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>842013 - Disclosure - Notes Payable (Tables)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://cxdo.com/role/NotesPayableTables</Role>
      <ShortName>Notes Payable (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://cxdo.com/role/NotesPayable</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>842014 - Disclosure - Fair Value Measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/FairValueMeasurementsTables</Role>
      <ShortName>Fair Value Measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://cxdo.com/role/FairValueMeasurements</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>842015 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/LeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://cxdo.com/role/Leases</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>842016 - Disclosure - Segments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/SegmentsTables</Role>
      <ShortName>Segments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://cxdo.com/role/SegmentReporting</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>842017 - Disclosure - Significant Accounting Policies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/SignificantAccountingPoliciesDetails</Role>
      <ShortName>Significant Accounting Policies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/SignificantAccountingPoliciesTables</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>842018 - Disclosure - Significant Accounting Policies (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/SignificantAccountingPoliciesDetails1</Role>
      <ShortName>Significant Accounting Policies (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/SignificantAccountingPoliciesTables</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>842019 - Disclosure - Significant Accounting Policies (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative</Role>
      <ShortName>Significant Accounting Policies (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/SignificantAccountingPoliciesTables</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>842020 - Disclosure - Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/RevenueDetails</Role>
      <ShortName>Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/RevenueTables</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>842021 - Disclosure - Revenue (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/RevenueDetails1</Role>
      <ShortName>Revenue (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/RevenueTables</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>842022 - Disclosure - Revenue (Details 2)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/RevenueDetails2</Role>
      <ShortName>Revenue (Details 2)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/RevenueTables</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>842023 - Disclosure - Revenue (Details 3)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/RevenueDetails3</Role>
      <ShortName>Revenue (Details 3)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/RevenueTables</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>842024 - Disclosure - Revenue (Details 4)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/RevenueDetails4</Role>
      <ShortName>Revenue (Details 4)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/RevenueTables</ParentRole>
      <Position>45</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>842025 - Disclosure - Revenue (Details 5)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/RevenueDetails5</Role>
      <ShortName>Revenue (Details 5)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/RevenueTables</ParentRole>
      <Position>46</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>842026 - Disclosure - Revenue (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/RevenueDetailsNarrative</Role>
      <ShortName>Revenue (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/RevenueTables</ParentRole>
      <Position>47</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>842027 - Disclosure - Earnings Per Common Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/EarningsPerCommonShareDetails</Role>
      <ShortName>Earnings Per Common Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/EarningsPerCommonShareTables</ParentRole>
      <Position>48</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>842028 - Disclosure - Earnings Per Common Share (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/EarningsPerCommonShareDetails1</Role>
      <ShortName>Earnings Per Common Share (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/EarningsPerCommonShareTables</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>842029 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails</Role>
      <ShortName>Trade Receivables and Allowance for Credit Losses (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables</ParentRole>
      <Position>50</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>842030 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails1</Role>
      <ShortName>Trade Receivables and Allowance for Credit Losses (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables</ParentRole>
      <Position>51</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>842031 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative</Role>
      <ShortName>Trade Receivables and Allowance for Credit Losses (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables</ParentRole>
      <Position>52</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>842032 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails</Role>
      <ShortName>Equipment Financing Receivables and Allowance for Credit Losses (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables</ParentRole>
      <Position>53</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>842033 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1</Role>
      <ShortName>Equipment Financing Receivables and Allowance for Credit Losses (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>842034 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 2)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2</Role>
      <ShortName>Equipment Financing Receivables and Allowance for Credit Losses (Details 2)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables</ParentRole>
      <Position>55</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>842035 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 3)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3</Role>
      <ShortName>Equipment Financing Receivables and Allowance for Credit Losses (Details 3)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables</ParentRole>
      <Position>56</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>842036 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 4)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4</Role>
      <ShortName>Equipment Financing Receivables and Allowance for Credit Losses (Details 4)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables</ParentRole>
      <Position>57</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>842037 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative</Role>
      <ShortName>Equipment Financing Receivables and Allowance for Credit Losses (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables</ParentRole>
      <Position>58</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>842038 - Disclosure - Prepaid Expenses (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/PrepaidExpensesDetails</Role>
      <ShortName>Prepaid Expenses (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/PrepaidExpensesTables</ParentRole>
      <Position>59</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>842039 - Disclosure - Property and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/PropertyAndEquipmentDetails</Role>
      <ShortName>Property and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/PropertyAndEquipmentTables</ParentRole>
      <Position>60</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>842040 - Disclosure - Property and Equipment (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/PropertyAndEquipmentDetailsNarrative</Role>
      <ShortName>Property and Equipment (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/PropertyAndEquipmentTables</ParentRole>
      <Position>61</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>842041 - Disclosure - Intangible Assets and Goodwill (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails</Role>
      <ShortName>Intangible Assets and Goodwill (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/IntangibleAssetsAndGoodwillTables</ParentRole>
      <Position>62</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>842042 - Disclosure - Intangible Assets and Goodwill (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1</Role>
      <ShortName>Intangible Assets and Goodwill (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/IntangibleAssetsAndGoodwillTables</ParentRole>
      <Position>63</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>842043 - Disclosure - Intangible Assets and Goodwill (Details 2)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails2</Role>
      <ShortName>Intangible Assets and Goodwill (Details 2)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/IntangibleAssetsAndGoodwillTables</ParentRole>
      <Position>64</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>842044 - Disclosure - Intangible Assets and Goodwill (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative</Role>
      <ShortName>Intangible Assets and Goodwill (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/IntangibleAssetsAndGoodwillTables</ParentRole>
      <Position>65</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>842045 - Disclosure - Accrued Expenses (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/AccruedExpensesDetails</Role>
      <ShortName>Accrued Expenses (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/AccruedExpensesTables</ParentRole>
      <Position>66</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>842046 - Disclosure - Accrued Expenses (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/AccruedExpensesDetails1</Role>
      <ShortName>Accrued Expenses (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/AccruedExpensesTables</ParentRole>
      <Position>67</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>842047 - Disclosure - Accrued Expenses (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/AccruedExpensesDetailsNarrative</Role>
      <ShortName>Accrued Expenses (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/AccruedExpensesTables</ParentRole>
      <Position>68</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>842048 - Disclosure - Notes Payable (Details)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://cxdo.com/role/NotesPayableDetails</Role>
      <ShortName>Notes Payable (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/NotesPayableTables</ParentRole>
      <Position>69</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>842049 - Disclosure - Notes Payable (Details 1)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://cxdo.com/role/NotesPayableDetails1</Role>
      <ShortName>Notes Payable (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/NotesPayableTables</ParentRole>
      <Position>70</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>842050 - Disclosure - Notes Payable (Details Narrative)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://cxdo.com/role/NotesPayableDetailsNarrative</Role>
      <ShortName>Notes Payable (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/NotesPayableTables</ParentRole>
      <Position>71</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>842051 - Disclosure - Line of Credit (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/LineOfCreditDetailsNarrative</Role>
      <ShortName>Line of Credit (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/LineOfCredit</ParentRole>
      <Position>72</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>842052 - Disclosure - Fair Value Measurements (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/FairValueMeasurementsDetails</Role>
      <ShortName>Fair Value Measurements (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/FairValueMeasurementsTables</ParentRole>
      <Position>73</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>842053 - Disclosure - Income Taxes (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/IncomeTaxesDetailsNarrative</Role>
      <ShortName>Income Taxes (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/IncomeTaxes</ParentRole>
      <Position>74</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>842054 - Disclosure - Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/LeasesDetails</Role>
      <ShortName>Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/LeasesTables</ParentRole>
      <Position>75</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>842055 - Disclosure - Leases (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/LeasesDetails1</Role>
      <ShortName>Leases (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/LeasesTables</ParentRole>
      <Position>76</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>842056 - Disclosure - Leases (Details 2)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/LeasesDetails2</Role>
      <ShortName>Leases (Details 2)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/LeasesTables</ParentRole>
      <Position>77</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>842057 - Disclosure - Leases (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/LeasesDetailsNarrative</Role>
      <ShortName>Leases (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/LeasesTables</ParentRole>
      <Position>78</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>842058 - Disclosure - Commitments and Contingencies (Details Narrative)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative</Role>
      <ShortName>Commitments and Contingencies (Details Narrative)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/CommitmentsAndContingencies</ParentRole>
      <Position>79</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>842059 - Disclosure - Segment Reporting (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/SegmentReportingDetails</Role>
      <ShortName>Segment Reporting (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/SegmentReporting</ParentRole>
      <Position>80</Position>
    </Report>
    <Report instance="cxdo_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>842060 - Disclosure - Segment Reporting (Details 1)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cxdo.com/role/SegmentReportingDetails1</Role>
      <ShortName>Segment Reporting (Details 1)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://cxdo.com/role/SegmentReporting</ParentRole>
      <Position>81</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File>cxdo-20250331.xsd</File>
    <File>cxdo-20250331_cal.xml</File>
    <File>cxdo-20250331_def.xml</File>
    <File>cxdo-20250331_lab.xml</File>
    <File>cxdo-20250331_pre.xml</File>
    <File doctype="10-Q" isDefinitelyFs="true" isUsgaap="true" original="cxdo_10q.htm">cxdo_10q.htm</File>
  </InputFiles>
  <SupplementalFiles>
    <File>cxdo_10qimg69.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="2">http://fasb.org/srt/2024</BaseTaxonomy>
    <BaseTaxonomy items="654">http://fasb.org/us-gaap/2024</BaseTaxonomy>
    <BaseTaxonomy items="28">http://xbrl.sec.gov/dei/2024</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>101
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "cxdo_10q.htm": {
   "nsprefix": "cxdo",
   "nsuri": "http://cxdo.com/20250331",
   "dts": {
    "schema": {
     "local": [
      "cxdo-20250331.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd",
      "http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd",
      "https://xbrl.sec.gov/country/2024/country-2024.xsd",
      "https://xbrl.sec.gov/currency/2024/currency-2024.xsd",
      "https://xbrl.sec.gov/dei/2024/dei-2024.xsd",
      "https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd",
      "https://xbrl.sec.gov/exch/2024/exch-2024.xsd",
      "https://xbrl.sec.gov/naics/2024/naics-2024.xsd",
      "https://xbrl.sec.gov/sic/2024/sic-2024.xsd",
      "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd"
     ]
    },
    "calculationLink": {
     "local": [
      "cxdo-20250331_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "cxdo-20250331_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "cxdo-20250331_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "cxdo-20250331_pre.xml"
     ]
    },
    "inline": {
     "local": [
      "cxdo_10q.htm"
     ]
    }
   },
   "keyStandard": 287,
   "keyCustom": 128,
   "axisStandard": 18,
   "axisCustom": 0,
   "memberStandard": 19,
   "memberCustom": 46,
   "hidden": {
    "total": 20,
    "http://fasb.org/us-gaap/2024": 9,
    "http://xbrl.sec.gov/dei/2024": 6,
    "http://cxdo.com/20250331": 5
   },
   "contextCount": 162,
   "entityCount": 1,
   "segmentCount": 65,
   "elementCount": 560,
   "unitCount": 4,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2024": 654,
    "http://xbrl.sec.gov/dei/2024": 28,
    "http://fasb.org/srt/2024": 2
   },
   "report": {
    "R1": {
     "role": "http://cxdo.com/role/Cover",
     "longName": "000001 - Document - Cover",
     "shortName": "Cover",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "dei:EntityRegistrantName",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "strong",
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "dei:EntityRegistrantName",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "strong",
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://cxdo.com/role/CondensedConsolidatedBalanceSheets",
     "longName": "110200 - Statement - Condensed Consolidated Balance Sheets",
     "shortName": "Condensed Consolidated Balance Sheets",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:AccountsReceivableNetCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "unique": true
     }
    },
    "R3": {
     "role": "http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical",
     "longName": "110201 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)",
     "shortName": "Condensed Consolidated Balance Sheets (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R4": {
     "role": "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited",
     "longName": "124100 - Statement - Condensed Consolidated Statements of Operations (Unaudited)",
     "shortName": "Condensed Consolidated Statements of Operations (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:ServiceRevenue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:ServiceRevenue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R5": {
     "role": "http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited",
     "longName": "148400 - Statement - Condensed Consolidated Statements of Comprehensive Income(Loss) (Unaudited)",
     "shortName": "Condensed Consolidated Statements of Comprehensive Income(Loss) (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:OtherComprehensiveIncomeLossNetOfTax",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "unique": true
     }
    },
    "R6": {
     "role": "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited",
     "longName": "148600 - Statement - Consolidated Statements of Stockholders' Equity (Unaudited)",
     "shortName": "Consolidated Statements of Stockholders' Equity (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "AsOf2023-12-31_us-gaap_CommonStockMember",
      "name": "us-gaap:SharesIssued",
      "unitRef": "Shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2023-12-31_us-gaap_CommonStockMember",
      "name": "us-gaap:SharesIssued",
      "unitRef": "Shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R7": {
     "role": "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited",
     "longName": "170000 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "shortName": "Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "7",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:DepreciationAndAmortization",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "unique": true
     }
    },
    "R8": {
     "role": "http://cxdo.com/role/SignificantAccountingPolicies",
     "longName": "290000 - Disclosure - Significant Accounting Policies",
     "shortName": "Significant Accounting Policies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "8",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R9": {
     "role": "http://cxdo.com/role/Revenue",
     "longName": "290001 - Disclosure - Revenue",
     "shortName": "Revenue",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://cxdo.com/role/EarningsPerCommonShare",
     "longName": "290002 - Disclosure - Earnings Per Common Share",
     "shortName": "Earnings Per Common Share",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLosses",
     "longName": "290003 - Disclosure - Trade Receivables and Allowance for Credit Losses",
     "shortName": "Trade Receivables and Allowance for Credit Losses",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:AllowanceForCreditLossesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:AllowanceForCreditLossesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLosses",
     "longName": "290004 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses",
     "shortName": "Equipment Financing Receivables and Allowance for Credit Losses",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://cxdo.com/role/PrepaidExpenses",
     "longName": "290005 - Disclosure - Prepaid Expenses",
     "shortName": "Prepaid Expenses",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:PrepaidExpensesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:PrepaidExpensesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://cxdo.com/role/PropertyAndEquipment",
     "longName": "290006 - Disclosure - Property and Equipment",
     "shortName": "Property and Equipment",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://cxdo.com/role/IntangibleAssetsAndGoodwill",
     "longName": "370000 - Disclosure - Intangible Assets and Goodwill",
     "shortName": "Intangible Assets and Goodwill",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "15",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://cxdo.com/role/AccruedExpenses",
     "longName": "400000 - Disclosure - Accrued Expenses",
     "shortName": "Accrued Expenses",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "16",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://cxdo.com/role/NotesPayable",
     "longName": "460000 - Disclosure - Notes Payable",
     "shortName": "Notes Payable",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "17",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://cxdo.com/role/LineOfCredit",
     "longName": "460001 - Disclosure - Line of Credit",
     "shortName": "Line of Credit",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "18",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:LineOfCreditTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:LineOfCreditTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://cxdo.com/role/FairValueMeasurements",
     "longName": "815000 - Disclosure - Fair Value Measurements",
     "shortName": "Fair Value Measurements",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "19",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://cxdo.com/role/IncomeTaxes",
     "longName": "815001 - Disclosure - Income Taxes",
     "shortName": "Income Taxes",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "20",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://cxdo.com/role/Leases",
     "longName": "842000 - Disclosure - Leases",
     "shortName": "Leases",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "21",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R22": {
     "role": "http://cxdo.com/role/CommitmentsAndContingencies",
     "longName": "842001 - Disclosure - Commitments and Contingencies",
     "shortName": "Commitments and Contingencies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "22",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://cxdo.com/role/SegmentReporting",
     "longName": "842002 - Disclosure - Segment Reporting",
     "shortName": "Segment Reporting",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "23",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://cxdo.com/role/SignificantAccountingPoliciesPolicies",
     "longName": "842003 - Disclosure - Significant Accounting Policies (Policies)",
     "shortName": "Significant Accounting Policies (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "24",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:DescriptionOfBusinessPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:DescriptionOfBusinessPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://cxdo.com/role/SignificantAccountingPoliciesTables",
     "longName": "842004 - Disclosure - Significant Accounting Policies (Tables)",
     "shortName": "Significant Accounting Policies (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "25",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R26": {
     "role": "http://cxdo.com/role/RevenueTables",
     "longName": "842005 - Disclosure - Revenue (Tables)",
     "shortName": "Revenue (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "26",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://cxdo.com/role/EarningsPerCommonShareTables",
     "longName": "842006 - Disclosure - Earnings Per Common Share (Tables)",
     "shortName": "Earnings Per Common Share (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "27",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables",
     "longName": "842007 - Disclosure - Trade Receivables and Allowance for Credit Losses (Tables)",
     "shortName": "Trade Receivables and Allowance for Credit Losses (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "28",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:ScheduleOFtradeReceivablesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:AllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:ScheduleOFtradeReceivablesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:AllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables",
     "longName": "842008 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Tables)",
     "shortName": "Equipment Financing Receivables and Allowance for Credit Losses (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "29",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://cxdo.com/role/PrepaidExpensesTables",
     "longName": "842009 - Disclosure - Prepaid Expenses (Tables)",
     "shortName": "Prepaid Expenses (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "30",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:ScheduleOfPrepaidExpensesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "cxdo:PrepaidExpensesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:ScheduleOfPrepaidExpensesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "cxdo:PrepaidExpensesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R31": {
     "role": "http://cxdo.com/role/PropertyAndEquipmentTables",
     "longName": "842010 - Disclosure - Property and Equipment (Tables)",
     "shortName": "Property and Equipment (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "31",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R32": {
     "role": "http://cxdo.com/role/IntangibleAssetsAndGoodwillTables",
     "longName": "842011 - Disclosure - Intangible Assets and Goodwill (Tables)",
     "shortName": "Intangible Assets and Goodwill (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "32",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://cxdo.com/role/AccruedExpensesTables",
     "longName": "842012 - Disclosure - Accrued Expenses (Tables)",
     "shortName": "Accrued Expenses (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "33",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R34": {
     "role": "http://cxdo.com/role/NotesPayableTables",
     "longName": "842013 - Disclosure - Notes Payable (Tables)",
     "shortName": "Notes Payable (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "34",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R35": {
     "role": "http://cxdo.com/role/FairValueMeasurementsTables",
     "longName": "842014 - Disclosure - Fair Value Measurements (Tables)",
     "shortName": "Fair Value Measurements (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "35",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:FairValueByBalanceSheetGroupingTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:FairValueDisclosuresTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:FairValueByBalanceSheetGroupingTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "us-gaap:FairValueDisclosuresTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R36": {
     "role": "http://cxdo.com/role/LeasesTables",
     "longName": "842015 - Disclosure - Leases (Tables)",
     "shortName": "Leases (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "36",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R37": {
     "role": "http://cxdo.com/role/SegmentsTables",
     "longName": "842016 - Disclosure - Segments (Tables)",
     "shortName": "Segments (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "37",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R38": {
     "role": "http://cxdo.com/role/SignificantAccountingPoliciesDetails",
     "longName": "842017 - Disclosure - Significant Accounting Policies (Details)",
     "shortName": "Significant Accounting Policies (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "38",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31_us-gaap_FurnitureAndFixturesMember",
      "name": "cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31_us-gaap_FurnitureAndFixturesMember",
      "name": "cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R39": {
     "role": "http://cxdo.com/role/SignificantAccountingPoliciesDetails1",
     "longName": "842018 - Disclosure - Significant Accounting Policies (Details 1)",
     "shortName": "Significant Accounting Policies (Details 1)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "39",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31_cxdo_DevelopedTechnologiesMember_cxdo_BottomMember",
      "name": "cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsPolicy",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31_cxdo_DevelopedTechnologiesMember_cxdo_BottomMember",
      "name": "cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsPolicy",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R40": {
     "role": "http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative",
     "longName": "842019 - Disclosure - Significant Accounting Policies (Details Narrative)",
     "shortName": "Significant Accounting Policies (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "40",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:CashEquivalentsAtCarryingValue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "p",
       "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:CashEquivalentsAtCarryingValue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "p",
       "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R41": {
     "role": "http://cxdo.com/role/RevenueDetails",
     "longName": "842020 - Disclosure - Revenue (Details)",
     "shortName": "Revenue (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "41",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember",
      "name": "cxdo:DesktopServices",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember",
      "name": "cxdo:DesktopServices",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:DisaggregationOfRevenueTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R42": {
     "role": "http://cxdo.com/role/RevenueDetails1",
     "longName": "842021 - Disclosure - Revenue (Details 1)",
     "shortName": "Revenue (Details 1)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "42",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:OtherReceivables",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:OtherReceivables",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R43": {
     "role": "http://cxdo.com/role/RevenueDetails2",
     "longName": "842022 - Disclosure - Revenue (Details 2)",
     "shortName": "Revenue (Details 2)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "43",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31_cxdo_ContractAssetsMember",
      "name": "cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31_cxdo_ContractAssetsMember",
      "name": "cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R44": {
     "role": "http://cxdo.com/role/RevenueDetails3",
     "longName": "842023 - Disclosure - Revenue (Details 3)",
     "shortName": "Revenue (Details 3)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "44",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "cxdo:DepositContractsAssetsGross",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "cxdo:DepositContractsAssetsGross",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R45": {
     "role": "http://cxdo.com/role/RevenueDetails4",
     "longName": "842024 - Disclosure - Revenue (Details 4)",
     "shortName": "Revenue (Details 4)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "45",
     "firstAnchor": {
      "contextRef": "AsOf2024-12-31",
      "name": "cxdo:AllowancesForCreditLossesOfContractAssets",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:SecuritiesBorrowedAllowanceForCreditLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2024-12-31",
      "name": "cxdo:AllowancesForCreditLossesOfContractAssets",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:SecuritiesBorrowedAllowanceForCreditLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R46": {
     "role": "http://cxdo.com/role/RevenueDetails5",
     "longName": "842025 - Disclosure - Revenue (Details 5)",
     "shortName": "Revenue (Details 5)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "46",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:PurchaseObligationDueInSecondYear",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:PurchaseObligationDueInSecondYear",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R47": {
     "role": "http://cxdo.com/role/RevenueDetailsNarrative",
     "longName": "842026 - Disclosure - Revenue (Details Narrative)",
     "shortName": "Revenue (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "47",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "cxdo:AllowanceForCreditLossesAsPercentOfGrossContractAssets",
      "unitRef": "Pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "cxdo:AllowanceForCreditLossesAsPercentOfGrossContractAssets",
      "unitRef": "Pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R48": {
     "role": "http://cxdo.com/role/EarningsPerCommonShareDetails",
     "longName": "842027 - Disclosure - Earnings Per Common Share (Details)",
     "shortName": "Earnings Per Common Share (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "48",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:DilutiveEffectOfStockBasedAwards",
      "unitRef": "Shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "unique": true
     }
    },
    "R49": {
     "role": "http://cxdo.com/role/EarningsPerCommonShareDetails1",
     "longName": "842028 - Disclosure - Earnings Per Common Share (Details 1)",
     "shortName": "Earnings Per Common Share (Details 1)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "49",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31_us-gaap_StockOptionMember",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "Shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31_us-gaap_StockOptionMember",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "Shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R50": {
     "role": "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails",
     "longName": "842029 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details)",
     "shortName": "Trade Receivables and Allowance for Credit Losses (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "50",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:AccountsReceivableGross",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOFtradeReceivablesTableTextBlock",
       "us-gaap:AllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:AccountsReceivableGross",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOFtradeReceivablesTableTextBlock",
       "us-gaap:AllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R51": {
     "role": "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails1",
     "longName": "842030 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details 1)",
     "shortName": "Trade Receivables and Allowance for Credit Losses (Details 1)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "51",
     "firstAnchor": {
      "contextRef": "AsOf2024-12-31",
      "name": "us-gaap:NetInvestmentInLeaseAllowanceForCreditLossCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfAllowanceForCreditLossestableTextBlock",
       "us-gaap:AllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2024-12-31",
      "name": "us-gaap:NetInvestmentInLeaseAllowanceForCreditLossCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfAllowanceForCreditLossestableTextBlock",
       "us-gaap:AllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R52": {
     "role": "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative",
     "longName": "842031 - Disclosure - Trade Receivables and Allowance for Credit Losses (Details Narrative)",
     "shortName": "Trade Receivables and Allowance for Credit Losses (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "52",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "cxdo:AccountsPercentageOfAccountsReceivable",
      "unitRef": "Pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "us-gaap:AllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "cxdo:AccountsPercentageOfAccountsReceivable",
      "unitRef": "Pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "us-gaap:AllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R53": {
     "role": "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails",
     "longName": "842032 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details)",
     "shortName": "Equipment Financing Receivables and Allowance for Credit Losses (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "53",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:FinancingReceivableRevolving",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock",
       "cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:FinancingReceivableRevolving",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock",
       "cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R54": {
     "role": "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1",
     "longName": "842033 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 1)",
     "shortName": "Equipment Financing Receivables and Allowance for Credit Losses (Details 1)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "54",
     "firstAnchor": {
      "contextRef": "AsOf2024-12-31",
      "name": "cxdo:GrossEquipmentFinancingReceivablesNexttwelvemonths",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock",
       "cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2024-12-31",
      "name": "cxdo:GrossEquipmentFinancingReceivablesNexttwelvemonths",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock",
       "cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R55": {
     "role": "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2",
     "longName": "842034 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 2)",
     "shortName": "Equipment Financing Receivables and Allowance for Credit Losses (Details 2)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "55",
     "firstAnchor": {
      "contextRef": "AsOf2024-12-31",
      "name": "cxdo:AllowanceforcreditlossesofContractAssets",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2024-12-31_cxdo_AllowanceForCreditLossesMember",
      "name": "cxdo:AllowanceforcreditlossesofContractAssets",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock",
       "cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "unique": true
     }
    },
    "R56": {
     "role": "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3",
     "longName": "842035 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 3)",
     "shortName": "Equipment Financing Receivables and Allowance for Credit Losses (Details 3)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "56",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "cxdo:AgingOfReceivablesDues",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfAgingOfReceivablesTableTextBlock",
       "cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "cxdo:AgingOfReceivablesDues",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfAgingOfReceivablesTableTextBlock",
       "cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R57": {
     "role": "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4",
     "longName": "842036 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details 4)",
     "shortName": "Equipment Financing Receivables and Allowance for Credit Losses (Details 4)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "57",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "cxdo:TotalEquipmentFinancingReceivablesDue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "cxdo:TotalEquipmentFinancingReceivablesDue",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R58": {
     "role": "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative",
     "longName": "842037 - Disclosure - Equipment Financing Receivables and Allowance for Credit Losses (Details Narrative)",
     "shortName": "Equipment Financing Receivables and Allowance for Credit Losses (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "58",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "srt:FinancingReceivableAllowanceForCreditLossToNonaccrualPercent",
      "unitRef": "Pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "srt:FinancingReceivableAllowanceForCreditLossToNonaccrualPercent",
      "unitRef": "Pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R59": {
     "role": "http://cxdo.com/role/PrepaidExpensesDetails",
     "longName": "842038 - Disclosure - Prepaid Expenses (Details)",
     "shortName": "Prepaid Expenses (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "59",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:PrepaidInsurance",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfPrepaidExpensesTableTextBlock",
       "cxdo:PrepaidExpensesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:PrepaidInsurance",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfPrepaidExpensesTableTextBlock",
       "cxdo:PrepaidExpensesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R60": {
     "role": "http://cxdo.com/role/PropertyAndEquipmentDetails",
     "longName": "842039 - Disclosure - Property and Equipment (Details)",
     "shortName": "Property and Equipment (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "60",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R61": {
     "role": "http://cxdo.com/role/PropertyAndEquipmentDetailsNarrative",
     "longName": "842040 - Disclosure - Property and Equipment (Details Narrative)",
     "shortName": "Property and Equipment (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "61",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:DepreciationDepletionAndAmortization",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:DepreciationDepletionAndAmortization",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "p",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R62": {
     "role": "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails",
     "longName": "842041 - Disclosure - Intangible Assets and Goodwill (Details)",
     "shortName": "Intangible Assets and Goodwill (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "62",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:FiniteLivedIntangibleAssetsNet",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31_us-gaap_CustomerRelationshipsMember",
      "name": "us-gaap:FiniteLivedIntangibleAssetsGross",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "unique": true
     }
    },
    "R63": {
     "role": "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1",
     "longName": "842042 - Disclosure - Intangible Assets and Goodwill (Details 1)",
     "shortName": "Intangible Assets and Goodwill (Details 1)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "63",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R64": {
     "role": "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails2",
     "longName": "842043 - Disclosure - Intangible Assets and Goodwill (Details 2)",
     "shortName": "Intangible Assets and Goodwill (Details 2)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "64",
     "firstAnchor": {
      "contextRef": "AsOf2023-12-31",
      "name": "cxdo:GoodwillBeginningBalance",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfGoodwillCarryingAmountTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2023-12-31",
      "name": "cxdo:GoodwillBeginningBalance",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfGoodwillCarryingAmountTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R65": {
     "role": "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative",
     "longName": "842044 - Disclosure - Intangible Assets and Goodwill (Details Narrative)",
     "shortName": "Intangible Assets and Goodwill (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "65",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:DevelopedTechnologies",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:DevelopedTechnologies",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R66": {
     "role": "http://cxdo.com/role/AccruedExpensesDetails",
     "longName": "842045 - Disclosure - Accrued Expenses (Details)",
     "shortName": "Accrued Expenses (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "66",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R67": {
     "role": "http://cxdo.com/role/AccruedExpensesDetails1",
     "longName": "842046 - Disclosure - Accrued Expenses (Details 1)",
     "shortName": "Accrued Expenses (Details 1)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "67",
     "firstAnchor": {
      "contextRef": "AsOf2024-12-31",
      "name": "us-gaap:ProductWarrantyAccrual",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2023-12-31",
      "name": "us-gaap:ProductWarrantyAccrual",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "unique": true
     }
    },
    "R68": {
     "role": "http://cxdo.com/role/AccruedExpensesDetailsNarrative",
     "longName": "842047 - Disclosure - Accrued Expenses (Details Narrative)",
     "shortName": "Accrued Expenses (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "68",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ProductWarrantyExpense",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "p",
       "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:ProductWarrantyExpense",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "p",
       "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R69": {
     "role": "http://cxdo.com/role/NotesPayableDetails",
     "longName": "842048 - Disclosure - Notes Payable (Details)",
     "shortName": "Notes Payable (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "69",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "cxdo:NotesPayableRelatedPartyClassifiedCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:OtherNotesPayable",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "unique": true
     }
    },
    "R70": {
     "role": "http://cxdo.com/role/NotesPayableDetails1",
     "longName": "842049 - Disclosure - Notes Payable (Details 1)",
     "shortName": "Notes Payable (Details 1)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "70",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R71": {
     "role": "http://cxdo.com/role/NotesPayableDetailsNarrative",
     "longName": "842050 - Disclosure - Notes Payable (Details Narrative)",
     "shortName": "Notes Payable (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "71",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "cxdo:NotesPayableRelatedPartyClassifiedCurrent",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "us-gaap:DebtDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31_cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember",
      "name": "cxdo:AgreementTerm",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "p",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "unique": true
     }
    },
    "R72": {
     "role": "http://cxdo.com/role/LineOfCreditDetailsNarrative",
     "longName": "842051 - Disclosure - Line of Credit (Details Narrative)",
     "shortName": "Line of Credit (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "72",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "p",
       "cxdo:LineOfCreditTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "p",
       "cxdo:LineOfCreditTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R73": {
     "role": "http://cxdo.com/role/FairValueMeasurementsDetails",
     "longName": "842052 - Disclosure - Fair Value Measurements (Details)",
     "shortName": "Fair Value Measurements (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "73",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember",
      "name": "us-gaap:AccountsReceivableFairValueDisclosure",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:FairValueByBalanceSheetGroupingTextBlock",
       "us-gaap:FairValueDisclosuresTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember",
      "name": "us-gaap:AccountsReceivableFairValueDisclosure",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:FairValueByBalanceSheetGroupingTextBlock",
       "us-gaap:FairValueDisclosuresTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R74": {
     "role": "http://cxdo.com/role/IncomeTaxesDetailsNarrative",
     "longName": "842053 - Disclosure - Income Taxes (Details Narrative)",
     "shortName": "Income Taxes (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "74",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations",
      "unitRef": "Pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations",
      "unitRef": "Pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R75": {
     "role": "http://cxdo.com/role/LeasesDetails",
     "longName": "842054 - Disclosure - Leases (Details)",
     "shortName": "Leases (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "75",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R76": {
     "role": "http://cxdo.com/role/LeasesDetails1",
     "longName": "842055 - Disclosure - Leases (Details 1)",
     "shortName": "Leases (Details 1)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "76",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:OperatingLeaseWeightedAverageRemainingLeaseTerm",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfLeaseTermAndDiscountTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:OperatingLeaseWeightedAverageRemainingLeaseTerm",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfLeaseTermAndDiscountTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R77": {
     "role": "http://cxdo.com/role/LeasesDetails2",
     "longName": "842056 - Disclosure - Leases (Details 2)",
     "shortName": "Leases (Details 2)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "77",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:OperatingCashFlowsFromOperatingLeases",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "cxdo:OperatingCashFlowsFromOperatingLeases",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "cxdo:ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R78": {
     "role": "http://cxdo.com/role/LeasesDetailsNarrative",
     "longName": "842057 - Disclosure - Leases (Details Narrative)",
     "shortName": "Leases (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "78",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:FinanceLeaseLiability",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "p",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "p",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "unique": true
     }
    },
    "R79": {
     "role": "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative",
     "longName": "842058 - Disclosure - Commitments and Contingencies (Details Narrative)",
     "shortName": "Commitments and Contingencies (Details Narrative)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "79",
     "firstAnchor": {
      "contextRef": "AsOf2025-03-31",
      "name": "us-gaap:PurchaseObligation",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-03-31_cxdo_OracleMemberMember",
      "name": "us-gaap:PurchaseObligation",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "unique": true
     }
    },
    "R80": {
     "role": "http://cxdo.com/role/SegmentReportingDetails",
     "longName": "842059 - Disclosure - Segment Reporting (Details)",
     "shortName": "Segment Reporting (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "80",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:Revenues",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:EmployeeBenefitsAndShareBasedCompensation",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "unique": true
     }
    },
    "R81": {
     "role": "http://cxdo.com/role/SegmentReportingDetails1",
     "longName": "842060 - Disclosure - Segment Reporting (Details 1)",
     "shortName": "Segment Reporting (Details 1)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "81",
     "firstAnchor": {
      "contextRef": "From2025-01-01to2025-03-31",
      "name": "us-gaap:Revenues",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "From2025-01-01to2025-03-31_country_US",
      "name": "us-gaap:Revenues",
      "unitRef": "USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cxdo_10q.htm",
      "unique": true
     }
    }
   },
   "tag": {
    "us-gaap_AccountingPoliciesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountingPoliciesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Significant Accounting Policies"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsAndNotesReceivableNetAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsAndNotesReceivableNetAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Trade Receivables and Allowance for Credit Losses"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
     "presentation": [
      "http://cxdo.com/role/AccruedExpenses"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Accrued Expenses",
        "label": "Accounts Payable, Accrued Liabilities, and Other Liabilities Disclosure, Current [Text Block]",
        "documentation": "The entire disclosure for accounts payable, accrued expenses, and other liabilities that are classified as current at the end of the reporting period."
       }
      }
     },
     "auth_ref": [
      "r448"
     ]
    },
    "us-gaap_AccountsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 19.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts payable",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r42",
      "r802"
     ]
    },
    "cxdo_AccountsPercentageOfAccountsReceivable": {
     "xbrltype": "percentItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AccountsPercentageOfAccountsReceivable",
     "presentation": [
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Percent of gross accounts receivable"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AccountsReceivableConcentrationRiskPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AccountsReceivableConcentrationRiskPercentage",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts receivable percentage generated from customers"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsReceivableFairValueDisclosure": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsReceivableFairValueDisclosure",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trade Receivables, Net",
        "documentation": "Fair value portion of amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties."
       }
      }
     },
     "auth_ref": [
      "r511"
     ]
    },
    "us-gaap_AccountsReceivableGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsReceivableGross",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Gross trade receivables",
        "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business."
       }
      }
     },
     "auth_ref": [
      "r174",
      "r280",
      "r281",
      "r964"
     ]
    },
    "us-gaap_AccountsReceivableNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsReceivableNet",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trade receivables, net",
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business."
       }
      }
     },
     "auth_ref": [
      "r697",
      "r738",
      "r822",
      "r963",
      "r964"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsReceivableNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trade receivables, net of allowance of $165 and $146, respectively",
        "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."
       }
      }
     },
     "auth_ref": [
      "r870"
     ]
    },
    "us-gaap_AccretionExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccretionExpense",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Accrued expenses",
        "label": "[Accretion Expense]",
        "documentation": "Amount recognized for the passage of time, typically for liabilities, that have been discounted to their net present values. Excludes accretion associated with asset retirement obligations."
       }
      }
     },
     "auth_ref": [
      "r779",
      "r902"
     ]
    },
    "cxdo_AccruedAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AccruedAccountsPayable",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Accounts Payable"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 20.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued expenses",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r45"
     ]
    },
    "us-gaap_AccruedRentCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedRentCurrent",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/PrepaidExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid rent",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for contractual rent under lease arrangements. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r45",
      "r756"
     ]
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/PropertyAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Less: Accumulated Depreciation",
        "label": "[Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment]",
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services."
       }
      }
     },
     "auth_ref": [
      "r32",
      "r169",
      "r629"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 35.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated other comprehensive income",
        "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source."
       }
      }
     },
     "auth_ref": [
      "r15",
      "r16",
      "r60",
      "r176",
      "r624",
      "r665",
      "r669"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "presentation": [
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated other comprehensive Income",
        "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."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r10",
      "r16",
      "r488",
      "r491",
      "r543",
      "r660",
      "r661",
      "r851",
      "r852",
      "r853",
      "r858",
      "r859",
      "r860",
      "r862"
     ]
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Remaining Useful Life For Customer Relationships",
        "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."
       }
      }
     },
     "auth_ref": [
      "r357",
      "r750"
     ]
    },
    "us-gaap_AdditionalPaidInCapital": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdditionalPaidInCapital",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 33.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional paid-in capital",
        "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock."
       }
      }
     },
     "auth_ref": [
      "r55",
      "r802",
      "r996"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional Paid-In Capital",
        "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."
       }
      }
     },
     "auth_ref": [
      "r676",
      "r858",
      "r859",
      "r860",
      "r862",
      "r940",
      "r999"
     ]
    },
    "us-gaap_AdjustmentOfWarrantsGrantedForServices": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentOfWarrantsGrantedForServices",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments Related To Pre-existing Warranties",
        "documentation": "Adjustment for noncash service expenses paid for by granting of warrants."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based compensation",
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r35",
      "r436"
     ]
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net income/(loss) to net cash provided by/(used for) operating activities:"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AgingOfReceivablesAmountDues": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AgingOfReceivablesAmountDues",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aging of receivables dues"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AgingOfReceivablesDues": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AgingOfReceivablesDues",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Aging of receivables dues",
        "label": "[Aging of receivables dues]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AgreementTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AgreementTerm",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Agreement Term"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AllegiantNetworksBusinessAcquisitionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AllegiantNetworksBusinessAcquisitionMember",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Allegiant Networks business acquisition [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AllowanceForContractAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AllowanceForContractAssets",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Allowance For Contract Assets"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AllowanceForCreditLosses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AllowanceForCreditLosses",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Allowance for credit losses"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AllowanceForCreditLossesAsPercentOfGrossContractAssets": {
     "xbrltype": "percentItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AllowanceForCreditLossesAsPercentOfGrossContractAssets",
     "presentation": [
      "http://cxdo.com/role/RevenueDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Allowance for credit losses as percent of gross contract assets"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AllowanceForCreditLossesDescriptionOfPeriod": {
     "xbrltype": "stringItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AllowanceForCreditLossesDescriptionOfPeriod",
     "presentation": [
      "http://cxdo.com/role/RevenueDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Allowance for credit losses description of period"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AllowanceForCreditLossesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AllowanceForCreditLossesMember",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Allowance for Credit Losses [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AllowanceForCreditLossesOfContractAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AllowanceForCreditLossesOfContractAssets",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Closing balance",
        "label": "[Closing balance]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AllowanceForCreditLossesOfContractAssetsProvision": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AllowanceForCreditLossesOfContractAssetsProvision",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Provision"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of financing receivables Allowance for Credit Losses",
        "documentation": "Tabular disclosure of allowance for credit loss on financing receivable."
       }
      }
     },
     "auth_ref": [
      "r101",
      "r882"
     ]
    },
    "us-gaap_AllowanceForCreditLossesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllowanceForCreditLossesTextBlock",
     "presentation": [
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLosses"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Trade Receivables and Allowance for Credit Losses",
        "label": "Allowance for Credit Losses [Text Block]",
        "documentation": "The entire disclosure for allowance for credit losses."
       }
      }
     },
     "auth_ref": [
      "r30"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllowanceForDoubtfulAccountsReceivable",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Less: allowance for credit losses",
        "label": "[Accounts Receivable, Allowance for Credit Loss]",
        "documentation": "Amount of allowance for credit loss on accounts receivable."
       }
      }
     },
     "auth_ref": [
      "r177",
      "r282",
      "r318",
      "r321",
      "r324",
      "r964"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Allowance For Doubtful Accounts - Trade Receivables",
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r177",
      "r282",
      "r318"
     ]
    },
    "cxdo_AllowanceForEquipmentFinancingReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AllowanceForEquipmentFinancingReceivable",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Allowance For Equipment Financing Receivable"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AllowanceForLoansAndLeaseLossesWriteOffs": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AllowanceForLoansAndLeaseLossesWriteOffs",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Write-offs",
        "label": "[Write-offs]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AllowanceForLongTermEquipmentFinancingReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AllowanceForLongTermEquipmentFinancingReceivable",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Allowance For Long Term Equipment Financing Receivable"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AllowanceforcreditlossesofContractAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AllowanceforcreditlossesofContractAssets",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2",
      "http://cxdo.com/role/RevenueDetails3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Less: allowance for credit losses",
        "label": "[Less: allowance for credit losses]",
        "periodStartLabel": "Opening balance",
        "periodEndLabel": "Closing balance"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AllowancesForCreditLossesOfContractAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AllowancesForCreditLossesOfContractAssets",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Opening balance",
        "label": "[Opening balance]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization Expense Included In General And Administrative Expenses"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AmortizationOfIntangibleAssetsCustomerRelationships": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AmortizationOfIntangibleAssetsCustomerRelationships",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization of Intangible Assets, Customer Relationships"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AmortizationOfIntangibleAssetsDevelopedTechnology": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AmortizationOfIntangibleAssetsDevelopedTechnology",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization of Intangible Assets, Developed Technology"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_AmortizationOfIntangibleAssetsTrademarksAndTradeNames": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "AmortizationOfIntangibleAssetsTrademarksAndTradeNames",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization of Intangible Assets, Trademarks and Trade Names"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "presentation": [
      "http://cxdo.com/role/EarningsPerCommonShareDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Securities excluded from earnings",
        "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."
       }
      }
     },
     "auth_ref": [
      "r232"
     ]
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Assets",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total Assets",
        "label": "[Assets]",
        "documentation": "Amount of asset recognized for present right to economic benefit."
       }
      }
     },
     "auth_ref": [
      "r89",
      "r100",
      "r173",
      "r204",
      "r236",
      "r242",
      "r267",
      "r271",
      "r313",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r483",
      "r485",
      "r512",
      "r620",
      "r702",
      "r766",
      "r767",
      "r802",
      "r828",
      "r908",
      "r909",
      "r956"
     ]
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 10.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current assets",
        "label": "[Assets, Current]",
        "documentation": "Amount of asset recognized for present right to economic benefit, classified as current."
       }
      }
     },
     "auth_ref": [
      "r165",
      "r182",
      "r204",
      "r313",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r483",
      "r485",
      "r512",
      "r802",
      "r908",
      "r909",
      "r956"
     ]
    },
    "us-gaap_AssetsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsCurrentAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current assets:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AwardDateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AwardDateAxis",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative",
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4",
      "http://cxdo.com/role/LeasesDetailsNarrative",
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Date [Axis]",
        "documentation": "Information by date or year award under share-based payment arrangement is granted."
       }
      }
     },
     "auth_ref": [
      "r912",
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937"
     ]
    },
    "us-gaap_AwardDateDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AwardDateDomain",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative",
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4",
      "http://cxdo.com/role/LeasesDetailsNarrative",
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Date or year award under share-based payment arrangement is granted."
       }
      }
     },
     "auth_ref": [
      "r912",
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937"
     ]
    },
    "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BasisOfAccountingPolicyPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basis of Presentation",
        "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)."
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_BoardOfDirectorsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "BoardOfDirectorsMember",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Board Of Directors [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_BonusAwardDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "BonusAwardDescription",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Bonus Award Description"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_BonusDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "BonusDescription",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Bonus description"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_BonusPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "BonusPlanMember",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Bonus Plan [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_BottomMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "BottomMember",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Bottom [Member]",
        "verboseLabel": "Minimum [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessAcquisitionAcquireeDomain",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "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."
       }
      }
     },
     "auth_ref": [
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r480",
      "r786",
      "r787"
     ]
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessAcquisitionAxis",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition Axis",
        "documentation": "Information by business combination or series of individually immaterial business combinations."
       }
      }
     },
     "auth_ref": [
      "r36",
      "r37",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r480",
      "r786",
      "r787"
     ]
    },
    "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets classified as property and equipment under finance lease obligations",
        "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date."
       }
      }
     },
     "auth_ref": [
      "r38",
      "r39"
     ]
    },
    "us-gaap_BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Asset Acquisitions",
        "documentation": "Disclosure of accounting policy for business combinations and other business acquisition transactions not accounted for using the purchase method, such as an exchange of shares between entities under common control."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r1"
     ]
    },
    "us-gaap_BusinessCombinationsPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BusinessCombinationsPolicy",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Acquisition",
        "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."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r86",
      "r87",
      "r88"
     ]
    },
    "cxdo_CapitalizedContractCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CapitalizedContractCost",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Capitalized contract costs"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CapitalizedContractCostNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CapitalizedContractCostNet",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract costs",
        "documentation": "Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer."
       }
      }
     },
     "auth_ref": [
      "r339"
     ]
    },
    "us-gaap_CapitalizedContractCostNetNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CapitalizedContractCostNetNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 17.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract costs, net of current portion",
        "documentation": "Amount, after accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer; classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r339"
     ]
    },
    "cxdo_CarryingReportedAmountsFairValueDisclosureMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CarryingReportedAmountsFairValueDisclosureMember",
     "presentation": [
      "http://cxdo.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carrying Value"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and Cash Equivalents",
        "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."
       }
      }
     },
     "auth_ref": [
      "r19"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets",
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and cash equivalents",
        "periodStartLabel": "CASH AND CASH EQUIVALENTS AT THE BEGINNING OF THE YEAR",
        "periodEndLabel": "CASH AND CASH EQUIVALENTS AT THE END OF THE YEAR",
        "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."
       }
      }
     },
     "auth_ref": [
      "r18",
      "r72",
      "r201"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "NET INCREASE/(DECREASE) IN CASH AND CASH EQUIVALENTS",
        "label": "[Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r72"
     ]
    },
    "us-gaap_CashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Cash and Cash Equivalents",
        "label": "[Cash Equivalents, at Carrying Value]",
        "documentation": "Amount of 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."
       }
      }
     },
     "auth_ref": [
      "r847",
      "r962"
     ]
    },
    "cxdo_CashUsedDuringTheYearAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CashUsedDuringTheYearAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash used during the year for:"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/RevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Significant changes in the contract assets and liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CityAreaCode",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_CloudComputingArrangements": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CloudComputingArrangements",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cloud computing arrangements"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_CloudTelecommunicationsSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CloudTelecommunicationsSegmentMember",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cloud Telecommunications Segment [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_CloudTelecommunicationsServiceSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CloudTelecommunicationsServiceSegmentMember",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cloud Telecommunications Service Segment"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingencies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments And Contingencies",
        "documentation": "The entire disclosure for commitments and contingencies."
       }
      }
     },
     "auth_ref": [
      "r81",
      "r380",
      "r381",
      "r739",
      "r901",
      "r903"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contingencies",
        "documentation": "Disclosure of accounting policy for commitments and contingencies, which may include policies for recognizing and measuring loss and gain contingencies."
       }
      }
     },
     "auth_ref": [
      "r33",
      "r740"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockMember",
     "presentation": [
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r819",
      "r820",
      "r821",
      "r823",
      "r824",
      "r825",
      "r826",
      "r858",
      "r859",
      "r862",
      "r940",
      "r995",
      "r999"
     ]
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockParOrStatedValuePerShare",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Par Value",
        "documentation": "Face amount or stated value per share of common stock."
       }
      }
     },
     "auth_ref": [
      "r54"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesAuthorized",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Authorized",
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r54",
      "r688"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesIssued",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Issued",
        "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."
       }
      }
     },
     "auth_ref": [
      "r54"
     ]
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Outstanding",
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r54",
      "r688",
      "r708",
      "r999",
      "r1000"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockValue",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 32.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common stock, par value $0.001 per share - authorized 50,000,000 shares, 28,990,386 shares issued and outstanding as of March 31, 2025 and 27,621,557 shares issued and outstanding as of December 31, 2024",
        "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."
       }
      }
     },
     "auth_ref": [
      "r54",
      "r623",
      "r802"
     ]
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ComprehensiveIncomeNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Comprehensive income/(loss)",
        "label": "[Comprehensive Income (Loss), Net of Tax, Attributable to Parent]",
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r17",
      "r185",
      "r187",
      "r194",
      "r615",
      "r635",
      "r636"
     ]
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ComprehensiveIncomeNetOfTaxAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other comprehensive income/(loss), net of tax"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ComputerSoftwareIntangibleAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ComputerSoftwareIntangibleAssetsMember",
     "presentation": [
      "http://cxdo.com/role/PropertyAndEquipmentDetails",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Computer Software [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ContingentConsiderationPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ContingentConsiderationPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contingent Consideration"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract Assets and Allowance for Credit Losses"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ContractAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ContractAssetsMember",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract Assets [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ContractCostsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ContractCostsPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract Costs"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ContractLiabilitiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ContractLiabilitiesMember",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract Liabilities [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ContractLiabilitiesPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ContractLiabilitiesPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract Liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/RevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract assets allowance for credit losses",
        "documentation": "Tabular disclosure of allowance for credit loss on right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time."
       }
      }
     },
     "auth_ref": [
      "r882"
     ]
    },
    "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/RevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract balances",
        "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."
       }
      }
     },
     "auth_ref": [
      "r910"
     ]
    },
    "us-gaap_ContractWithCustomerAssetNetNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerAssetNetNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 11.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract assets, net of allowance of $122 and $127, respectively",
        "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r419",
      "r421",
      "r432"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 25.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract liabilities",
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r419",
      "r420",
      "r432"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 27.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract liabilities, net of current portion",
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r419",
      "r420",
      "r432"
     ]
    },
    "cxdo_CostOfProductRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CostOfProductRevenue",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of product revenue"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_CostOfProductRevenuePolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CostOfProductRevenuePolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of Product Revenue"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_CostOfServiceRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CostOfServiceRevenue",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of service revenue"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_CostOfServiceRevenuePolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CostOfServiceRevenuePolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of Service Revenue"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_CostOfSoftwareSolutionsRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CostOfSoftwareSolutionsRevenue",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of software solutions revenue"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_CostOfSoftwareSolutionsRevenuePolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CostOfSoftwareSolutionsRevenuePolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of Software Solutions Revenue"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CostsAndExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CostsAndExpenses",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of product",
        "documentation": "Total costs of sales and operating expenses for the period."
       }
      }
     },
     "auth_ref": [
      "r69"
     ]
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_CreditCards": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CreditCards",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Credit cards"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CreditLossStatusAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CreditLossStatusAxis",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Credit Loss Status [Axis]",
        "documentation": "Information by credit loss status of financial asset."
       }
      }
     },
     "auth_ref": [
      "r881",
      "r883"
     ]
    },
    "us-gaap_CreditLossStatusDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CreditLossStatusDomain",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Credit loss status of financial asset."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_CustomerRelationshipMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "CustomerRelationshipMember",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer Relationship [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CustomerRelationshipsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CustomerRelationshipsMember",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer Relationships",
        "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships."
       }
      }
     },
     "auth_ref": [
      "r40",
      "r889",
      "r890",
      "r891",
      "r892",
      "r893",
      "r895",
      "r898",
      "r899"
     ]
    },
    "us-gaap_DebtDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes Payable"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtDisclosureTextBlock",
     "presentation": [
      "http://cxdo.com/role/NotesPayable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Notes Payable",
        "label": "Debt Disclosure [Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r82",
      "r203",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r387",
      "r388",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403",
      "r404",
      "r406",
      "r410",
      "r411",
      "r413",
      "r526"
     ]
    },
    "us-gaap_DebtInstrumentInterestRateDuringPeriod": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentInterestRateDuringPeriod",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Rate",
        "documentation": "The average effective interest rate during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r47",
      "r408",
      "r950"
     ]
    },
    "us-gaap_DebtInstrumentPeriodicPaymentPrincipal": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentPeriodicPaymentPrincipal",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Principal amount paid",
        "documentation": "Amount of the required periodic payments applied to principal."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "us-gaap_DebtPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Notes Payable",
        "label": "Debt, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy related to debt. Includes, but is not limited to, debt issuance costs, the effects of refinancings, method of amortizing debt issuance costs and original issue discount, and classifications of debt."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "cxdo_DecemberThirtyOneTwoThousandTwentyFourMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "DecemberThirtyOneTwoThousandTwentyFourMember",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "December 31 2024 [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_DeferredTaxAssetValuationAllowance": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "DeferredTaxAssetValuationAllowance",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/IncomeTaxesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Valuation allowance"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_DeferredTaxesRealizableAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "DeferredTaxesRealizableAmount",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IncomeTaxesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred taxes, realizable amount"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DepositContractsAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DepositContractsAssets",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails1",
      "http://cxdo.com/role/RevenueDetails3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contract assets, net of allowance for credit losses",
        "verboseLabel": "Contract assets, net of allowance for credit losses",
        "documentation": "Carrying amount of assets as of the balance sheet date pertaining to amounts paid by the insured (including a ceding company) under insurance or reinsurance contracts for which insurance risk is not transferred."
       }
      }
     },
     "auth_ref": [
      "r337",
      "r338"
     ]
    },
    "cxdo_DepositContractsAssetsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "DepositContractsAssetsGross",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Gross contract assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DepositContractsLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DepositContractsLiabilities",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Contract liabilities",
        "label": "[Deposit Contracts, Liabilities]",
        "documentation": "Carrying amount of liabilities as of the balance sheet date pertaining to amounts received by the insurer or reinsurer from the insured (including a ceding company) under insurance or reinsurance contracts for which insurance risk is not transferred."
       }
      }
     },
     "auth_ref": [
      "r337",
      "r338"
     ]
    },
    "us-gaap_DepreciationAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DepreciationAndAmortization",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Depreciation and amortization",
        "documentation": "The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r31"
     ]
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DepreciationDepletionAndAmortization",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/PropertyAndEquipmentDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Depreciation expense included in general and administrative expenses",
        "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."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r236",
      "r247",
      "r271",
      "r766",
      "r767"
     ]
    },
    "cxdo_DescriptionOfBusinessPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "DescriptionOfBusinessPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Description of Business"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_DescriptionOfleaseExpiryDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "DescriptionOfleaseExpiryDate",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Description Of lease Expiry Date"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_DescriptionRelatedToNoncancellableServiceContractFutureAmount": {
     "xbrltype": "stringItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "DescriptionRelatedToNoncancellableServiceContractFutureAmount",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Description related to noncancellable service contract"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_DesktopDevicesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "DesktopDevicesMember",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Desktop Devices [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_DesktopServices": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "DesktopServices",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Desktop devices"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_DevelopedTechnologies": {
     "xbrltype": "durationItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "DevelopedTechnologies",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Developed Technologies",
        "label": "[Developed Technologies]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_DevelopedTechnologiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "DevelopedTechnologiesMember",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Developed Technologies [Member]",
        "verboseLabel": "Developed Technologies"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_DilutiveEffectOfStockBasedAwards": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "DilutiveEffectOfStockBasedAwards",
     "presentation": [
      "http://cxdo.com/role/EarningsPerCommonShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dilutive effect of stock-based awards"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/RevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of revenue",
        "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."
       }
      }
     },
     "auth_ref": [
      "r911"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Period Focus",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalYearFocus": {
     "xbrltype": "gYearItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Year Focus",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period End Date",
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentQuarterlyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentQuarterlyReport",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Quarterly Report",
        "documentation": "Boolean flag that is true only for a form used as an quarterly report."
       }
      }
     },
     "auth_ref": [
      "r831"
     ]
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r832"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentType",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Type",
        "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'."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings per common share:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareBasic",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://cxdo.com/role/EarningsPerCommonShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basic",
        "verboseLabel": "Basic (A/B)",
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r195",
      "r212",
      "r213",
      "r215",
      "r216",
      "r217",
      "r219",
      "r225",
      "r227",
      "r229",
      "r230",
      "r231",
      "r235",
      "r478",
      "r482",
      "r496",
      "r497",
      "r616",
      "r637",
      "r758"
     ]
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareDiluted",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://cxdo.com/role/EarningsPerCommonShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Diluted",
        "verboseLabel": "Diluted (A/C)",
        "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."
       }
      }
     },
     "auth_ref": [
      "r195",
      "r212",
      "r213",
      "r215",
      "r216",
      "r217",
      "r219",
      "r227",
      "r229",
      "r230",
      "r231",
      "r235",
      "r478",
      "r482",
      "r496",
      "r497",
      "r616",
      "r637",
      "r758"
     ]
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareTextBlock",
     "presentation": [
      "http://cxdo.com/role/EarningsPerCommonShare"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Earnings Per Common Share",
        "label": "Earnings Per Share [Text Block]",
        "documentation": "The entire disclosure for earnings per share."
       }
      }
     },
     "auth_ref": [
      "r224",
      "r232",
      "r233",
      "r234"
     ]
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 26.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effect of exchange rate changes on cash",
        "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts 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."
       }
      }
     },
     "auth_ref": [
      "r518"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "presentation": [
      "http://cxdo.com/role/IncomeTaxesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective income tax rate",
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r455",
      "r788"
     ]
    },
    "us-gaap_EmployeeBenefitsAndShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeBenefitsAndShareBasedCompensation",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee expenses",
        "documentation": "Amount of expense for employee benefit and equity-based compensation."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Wages And Benefits",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r45"
     ]
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address Address Line 1",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine2": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressAddressLine2",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address Address Line 2",
        "documentation": "Address Line 2 such as Street or Suite number"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address City Or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address State Or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Central Index Key",
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK."
       }
      }
     },
     "auth_ref": [
      "r830"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Common Stock Shares Outstanding",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCurrentReportingStatus": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Current Reporting Status",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r830"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity File Number",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityFilerCategory": {
     "xbrltype": "filerCategoryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Filer Category",
        "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."
       }
      }
     },
     "auth_ref": [
      "r830"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Incorporation State Country Code",
        "documentation": "Two-character EDGAR code representing the state or country of incorporation."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Interactive Data Current",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r833"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r830"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Shell Company",
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r830"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r830"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Tax Identification Number",
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS."
       }
      }
     },
     "auth_ref": [
      "r830"
     ]
    },
    "cxdo_EquipmentFinancingReceivableFairValueDisclosure": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "EquipmentFinancingReceivableFairValueDisclosure",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equipment Financing Receivables"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_EquipmentFinancingReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "EquipmentFinancingReceivables",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equipment financing receivables, net of allowance of $31 and $69, respectively",
        "documentation": "Liabilities relating to legal proceedings"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "EquipmentFinancingReceivablesAndAllowanceForCreditLossesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Equipment Financing Receivables and Allowance for Credit Losses"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Equipment Financing Receivables and Allowance for Credit Losses",
        "label": "[Equipment Financing Receivables and Allowance for Credit Losses 1]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLosses"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Equipment Financing Receivables and Allowance for Credit Losses",
        "label": "[Equipment Financing Receivables and Allowance for Credit Losses]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_EquipmentFinancingReceivablesDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "EquipmentFinancingReceivablesDue",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Total",
        "label": "[Total]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "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."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r161",
      "r189",
      "r190",
      "r191",
      "r207",
      "r208",
      "r209",
      "r211",
      "r217",
      "r220",
      "r222",
      "r237",
      "r314",
      "r317",
      "r367",
      "r418",
      "r468",
      "r469",
      "r475",
      "r476",
      "r477",
      "r479",
      "r481",
      "r482",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r495",
      "r519",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r528",
      "r531",
      "r543",
      "r633",
      "r660",
      "r661",
      "r662",
      "r676",
      "r729"
     ]
    },
    "cxdo_EstimateOfFairValueFairValueDisclosuresMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "EstimateOfFairValueFairValueDisclosuresMember",
     "presentation": [
      "http://cxdo.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Estimated Fair Value"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueByBalanceSheetGroupingTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueByBalanceSheetGroupingTextBlock",
     "presentation": [
      "http://cxdo.com/role/FairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair value of financial instruments",
        "documentation": "Tabular disclosure of the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities."
       }
      }
     },
     "auth_ref": [
      "r41"
     ]
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueDisclosuresAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value Measurements"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueDisclosuresTextBlock",
     "presentation": [
      "http://cxdo.com/role/FairValueMeasurements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Fair Value Measurements",
        "label": "Fair Value Disclosures [Text Block]",
        "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information."
       }
      }
     },
     "auth_ref": [
      "r499",
      "r501",
      "r502",
      "r503",
      "r505",
      "r506",
      "r507",
      "r508",
      "r509",
      "r611",
      "r789",
      "r794"
     ]
    },
    "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueMeasurementPolicyPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Fair Value Measurements",
        "label": "Fair Value Measurement, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_FeesCommissionsAndOtherRecognizedOverTime": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "FeesCommissionsAndOtherRecognizedOverTime",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fees, commissions, and other, recognized over time"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilitiesPaymentsDueAbstract",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance Leases"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiability",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails",
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Present Value Of Minimum Lease Payments",
        "label": "[Finance Lease, Liability]",
        "terseLabel": "Finance lease",
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease."
       }
      }
     },
     "auth_ref": [
      "r533",
      "r539"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 21.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance leases",
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r533"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 28.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance leases, net of current portion",
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r533"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDue",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Total Minimum Lease Payment",
        "label": "[Finance Lease, Liability, to be Paid]",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2025",
        "label": "[Finance Lease, Liability, to be Paid, Year One]",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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)."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearFive",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2029",
        "label": "[Finance Lease, Liability, to be Paid, Year Five]",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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)."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearFour",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2028",
        "label": "[Finance Lease, Liability, to be Paid, Year Four]",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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)."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearThree",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2027",
        "label": "[Finance Lease, Liability, to be Paid, Year Three]",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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)."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityPaymentsDueYearTwo",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2026",
        "label": "[Finance Lease, Liability, to be Paid, Year Two]",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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)."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseLiabilityUndiscountedExcessAmount",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Less: Amount Representing Interest",
        "label": "[Finance Lease, Liability, Undiscounted Excess Amount]",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_FinanceLeasePrincipalPayments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeasePrincipalPayments",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 19.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Repayments made on finance leases",
        "label": "[Finance Lease, Principal Payments]",
        "documentation": "Amount of cash outflow for principal payment on finance lease."
       }
      }
     },
     "auth_ref": [
      "r534",
      "r536"
     ]
    },
    "us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeaseWeightedAverageDiscountRatePercent",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted-average Discount Rate- Finance Leases",
        "documentation": "Weighted average discount rate for finance lease calculated at point in time."
       }
      }
     },
     "auth_ref": [
      "r538",
      "r801"
     ]
    },
    "cxdo_FinanceLeaseWeightedAverageRemainingLeaseTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "FinanceLeaseWeightedAverageRemainingLeaseTerm",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted-average Remaining Lease Term - Finance Leases"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_FinanceLeasesFairValueDisclosure": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "FinanceLeasesFairValueDisclosure",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finance lease obligations"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinancialInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancialInstrumentAxis",
     "presentation": [
      "http://cxdo.com/role/EarningsPerCommonShareDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Instrument [Axis]",
        "documentation": "Information by type of financial instrument."
       }
      }
     },
     "auth_ref": [
      "r283",
      "r284",
      "r285",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r319",
      "r320",
      "r325",
      "r326",
      "r327",
      "r329",
      "r330",
      "r331",
      "r412",
      "r417",
      "r493",
      "r510",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r634",
      "r775",
      "r789",
      "r791",
      "r793",
      "r794",
      "r795",
      "r796",
      "r797",
      "r798",
      "r799",
      "r803",
      "r839",
      "r840",
      "r841",
      "r842",
      "r843",
      "r844",
      "r845",
      "r874",
      "r875",
      "r876",
      "r877",
      "r942",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948"
     ]
    },
    "cxdo_FinancingCashFlowsFromFinanceLeases": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "FinancingCashFlowsFromFinanceLeases",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financing Cash Flows From Finance Leases"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_FinancingReceivableAllowanceForCreditLossEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "FinancingReceivableAllowanceForCreditLossEquipment",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equipment financing receivables, net"
       }
      }
     },
     "auth_ref": []
    },
    "srt_FinancingReceivableAllowanceForCreditLossToNonaccrualPercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "FinancingReceivableAllowanceForCreditLossToNonaccrualPercent",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Allowance for credit losses",
        "label": "[Financing Receivable, Allowance for Credit Loss to Nonaccrual, Percent]",
        "documentation": "Percentage of allowance for credit loss to nonaccrual financing receivable."
       }
      }
     },
     "auth_ref": [
      "r132"
     ]
    },
    "us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancingReceivableAllowanceForCreditLossesRecovery",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Recoveries and others",
        "label": "[Financing Receivable, Allowance for Credit Loss, Recovery]",
        "documentation": "Amount of increase in allowance for credit loss on financing receivable from recovery."
       }
      }
     },
     "auth_ref": [
      "r104",
      "r323",
      "r773"
     ]
    },
    "cxdo_FinancingReceivableAllowanceForCreditLossesRecoveryOthers": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "FinancingReceivableAllowanceForCreditLossesRecoveryOthers",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Recoveries and others"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancingReceivableAllowanceForCreditLossesWriteOffs",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Write- offs",
        "label": "[Financing Receivable, Allowance for Credit Loss, Writeoff]",
        "documentation": "Amount of writeoff of financing receivable, charged against allowance for credit loss."
       }
      }
     },
     "auth_ref": [
      "r103",
      "r322",
      "r328",
      "r773"
     ]
    },
    "cxdo_FinancingReceivableAllowancesForCreditLossesWriteOffs": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "FinancingReceivableAllowancesForCreditLossesWriteOffs",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Write- offs",
        "label": "[Write- offs]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinancingReceivableRevolving": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancingReceivableRevolving",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Gross equipment financing receivables",
        "documentation": "Amortized cost of financing receivable that can be withdrawn, repaid, and redrawn."
       }
      }
     },
     "auth_ref": [
      "r328",
      "r773"
     ]
    },
    "us-gaap_FinancingReceivables60To89DaysPastDueMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancingReceivables60To89DaysPastDueMember",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Past due amounts 0-90 days [Member]",
        "documentation": "Financial asset more than 59 days past due but fewer than 90 days past due."
       }
      }
     },
     "auth_ref": [
      "r774"
     ]
    },
    "us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancingReceivablesEqualToGreaterThan90DaysPastDueMember",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Past due amounts >90 days [Member]",
        "documentation": "Financial asset equal to or greater than 90 days past due."
       }
      }
     },
     "auth_ref": [
      "r774"
     ]
    },
    "us-gaap_FinancingReceivablesPeriodPastDueAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancingReceivablesPeriodPastDueAxis",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Financial Asset, Aging [Axis]",
        "documentation": "Information by period in which financial asset is past due or not past due."
       }
      }
     },
     "auth_ref": [
      "r108",
      "r325",
      "r774"
     ]
    },
    "us-gaap_FinancingReceivablesPeriodPastDueDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancingReceivablesPeriodPastDueDomain",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period in which financial asset is past due or not past due. For past due, element name and standard label in Financial Asset, [numeric lower end] to [numeric higher end] [date measure] Past Due [Member] or Financial Asset, Greater than [low end numeric value] [date measure] Past Due [Member] or Financial Asset, Less than [high end numeric value] [date measure] Past Due [Member] formats."
       }
      }
     },
     "auth_ref": [
      "r108",
      "r325",
      "r774"
     ]
    },
    "cxdo_FiniteLivedIntangibleAssetEstimatedUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "FiniteLivedIntangibleAssetEstimatedUsefulLife",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Estimated useful lives"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Less: Accumulated Amortization",
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r171",
      "r340",
      "r360",
      "r778"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2030 and thereafter",
        "label": "[Finite-Lived Intangible Asset, Expected Amortization, after Year Five]",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r896",
      "r1001"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2025",
        "label": "[Finite-Lived Intangible Asset, Expected Amortization, Year One]",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r361",
      "r750",
      "r778"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sammary of amortization of intangible assets",
        "documentation": "Tabular disclosure of amortization expense of assets, excluding financial assets, that lack physical substance, having a limited useful life."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2029",
        "label": "[Finite-Lived Intangible Asset, Expected Amortization, Year Five]",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r361",
      "r750",
      "r778"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2028",
        "label": "[Finite-Lived Intangible Asset, Expected Amortization, Year Four]",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r361",
      "r750",
      "r778"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2027",
        "label": "[Finite-Lived Intangible Asset, Expected Amortization, Year Three]",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r361",
      "r750",
      "r778"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2026",
        "label": "[Finite-Lived Intangible Asset, Expected Amortization, Year Two]",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r361",
      "r750",
      "r778"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails",
      "http://cxdo.com/role/RevenueDetails2",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "documentation": "Information by major type or class of finite-lived intangible assets."
       }
      }
     },
     "auth_ref": [
      "r354",
      "r355",
      "r356",
      "r357",
      "r359",
      "r360",
      "r362",
      "r363",
      "r579",
      "r580",
      "r750"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsGross",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carrying Amount Of Intangible, Gross",
        "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r340",
      "r360",
      "r580",
      "r778"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails",
      "http://cxdo.com/role/RevenueDetails2",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1"
     ],
     "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."
       }
      }
     },
     "auth_ref": [
      "r354",
      "r355",
      "r356",
      "r357",
      "r359",
      "r360",
      "r362",
      "r363",
      "r750"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsNet",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails",
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Carrying Amount Of Intangible, Net",
        "verboseLabel": "Total",
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r579",
      "r895"
     ]
    },
    "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ForeignCurrencyTransactionGainLossBeforeTax",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign currency translation gains/(losses)",
        "documentation": "Amount, before tax, of realized and unrealized gain (loss) from foreign currency transaction."
       }
      }
     },
     "auth_ref": [
      "r514",
      "r515",
      "r516",
      "r517",
      "r726"
     ]
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign Currency Translation",
        "documentation": "Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy."
       }
      }
     },
     "auth_ref": [
      "r513"
     ]
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FurnitureAndFixturesMember",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Furniture and Fixtures [Member]",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GeneralAndAdministrativeExpense",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 9.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "General and administrative",
        "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line."
       }
      }
     },
     "auth_ref": [
      "r64",
      "r712"
     ]
    },
    "us-gaap_GeneralAndAdministrativeExpenseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GeneralAndAdministrativeExpenseMember",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "General and Administrative",
        "documentation": "Primary financial statement caption encompassing general and administrative expense."
       }
      }
     },
     "auth_ref": [
      "r64"
     ]
    },
    "us-gaap_GeographicDistributionAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GeographicDistributionAxis",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographic Distribution [Axis]",
        "documentation": "Information by geographic distribution of business activity identified as either domestic or foreign. Excludes names of countries, states and provinces, and cities."
       }
      }
     },
     "auth_ref": [
      "r120",
      "r121",
      "r122",
      "r123",
      "r124",
      "r125",
      "r126",
      "r127",
      "r128",
      "r129",
      "r130",
      "r131",
      "r133",
      "r134",
      "r135",
      "r136",
      "r137",
      "r138",
      "r617",
      "r618",
      "r772"
     ]
    },
    "us-gaap_GeographicDistributionDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GeographicDistributionDomain",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Allocation of business activity identified as domestic or foreign. Excludes names of countries, states and provinces, and cities."
       }
      }
     },
     "auth_ref": [
      "r120",
      "r121",
      "r122",
      "r123",
      "r124",
      "r125",
      "r126",
      "r127",
      "r128",
      "r129",
      "r130",
      "r131",
      "r133",
      "r134",
      "r135",
      "r136",
      "r137",
      "r138",
      "r617",
      "r618"
     ]
    },
    "us-gaap_Goodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Goodwill",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 16.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill",
        "documentation": "Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized."
       }
      }
     },
     "auth_ref": [
      "r170",
      "r342",
      "r612",
      "r767",
      "r777",
      "r790",
      "r802",
      "r886",
      "r887"
     ]
    },
    "cxdo_GoodwillAdditions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "GoodwillAdditions",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additions"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Assets and Goodwill"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwill"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Assets And Goodwill",
        "documentation": "The entire disclosure for goodwill and intangible assets."
       }
      }
     },
     "auth_ref": [
      "r885",
      "r888"
     ]
    },
    "us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillAndIntangibleAssetsGoodwillPolicy",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Goodwill",
        "label": "Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for goodwill. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined."
       }
      }
     },
     "auth_ref": [
      "r341",
      "r352",
      "r777"
     ]
    },
    "us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillAndIntangibleAssetsIntangibleAssetsPolicy",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Assets",
        "documentation": "Disclosure of accounting policy for intangible assets. This accounting policy may address both intangible assets subject to amortization and those that are not. The following also may be disclosed: (1) a description of intangible assets (2) the estimated useful lives of those assets (3) the amortization method used (4) how the entity assesses and measures impairment of such assets (5) how future cash flows are estimated (6) how the fair values of such asset are determined."
       }
      }
     },
     "auth_ref": [
      "r353",
      "r364",
      "r366"
     ]
    },
    "cxdo_GoodwillBeginningBalance": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "GoodwillBeginningBalance",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Goodwill, beginning balance",
        "label": "[Goodwill, beginning balance]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_GoodwillEndingBalance": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "GoodwillEndingBalance",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Goodwill, ending balance",
        "label": "[Goodwill, ending balance]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_GrossEquipmentFinancingReceivablesAfteryearfive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "GrossEquipmentFinancingReceivablesAfteryearfive",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2030 and thereafter"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_GrossEquipmentFinancingReceivablesNexttwelvemonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "GrossEquipmentFinancingReceivablesNexttwelvemonths",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2025 remaining"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_GrossEquipmentFinancingReceivablesYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "GrossEquipmentFinancingReceivablesYearFive",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2029"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_GrossEquipmentFinancingReceivablesYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "GrossEquipmentFinancingReceivablesYearFour",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2028",
        "label": "[2028]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_GrossEquipmentFinancingReceivablesYearthree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "GrossEquipmentFinancingReceivablesYearthree",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2027",
        "label": "[2027]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_GrossEquipmentFinancingReceivablesYeartwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "GrossEquipmentFinancingReceivablesYeartwo",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2026",
        "label": "[2026]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 18.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income/(loss) before income tax",
        "label": "[Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest]",
        "verboseLabel": "Income (loss) before income tax",
        "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."
       }
      }
     },
     "auth_ref": [
      "r61",
      "r95",
      "r99",
      "r618",
      "r631",
      "r760",
      "r766",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868"
     ]
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Statements of Operations (Unaudited)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementLocationAxis",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement Location Axis",
        "documentation": "Information by location in statement of income where disaggregated amount has been reported."
       }
      }
     },
     "auth_ref": [
      "r368",
      "r375",
      "r377",
      "r498",
      "r500",
      "r504",
      "r658",
      "r659",
      "r713",
      "r750",
      "r792",
      "r966"
     ]
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementLocationDomain",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location in statement of income where disaggregated amount has been reported."
       }
      }
     },
     "auth_ref": [
      "r375",
      "r377",
      "r498",
      "r500",
      "r504",
      "r658",
      "r659",
      "r713",
      "r750",
      "r792",
      "r966"
     ]
    },
    "us-gaap_IncomeTaxAuthorityNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxAuthorityNameAxis",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Authority Name Axis",
        "documentation": "Information by name of taxing authority."
       }
      }
     },
     "auth_ref": [
      "r460",
      "r939"
     ]
    },
    "us-gaap_IncomeTaxAuthorityNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxAuthorityNameDomain",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Named agency, division or body that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes."
       }
      }
     },
     "auth_ref": [
      "r460",
      "r939"
     ]
    },
    "cxdo_IncomeTaxBenefitProvisions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "IncomeTaxBenefitProvisions",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/IncomeTaxesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income tax benefit/(provision)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxDisclosureTextBlock",
     "presentation": [
      "http://cxdo.com/role/IncomeTaxes"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Income Taxes",
        "label": "Income Tax Disclosure [Text Block]",
        "documentation": "The entire disclosure for income tax."
       }
      }
     },
     "auth_ref": [
      "r205",
      "r451",
      "r455",
      "r457",
      "r458",
      "r459",
      "r461",
      "r464",
      "r470",
      "r472",
      "r473",
      "r474",
      "r675",
      "r788"
     ]
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 19.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Income tax (provision)/benefit",
        "label": "[Income Tax Expense (Benefit)]",
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r109",
      "r118",
      "r221",
      "r222",
      "r236",
      "r250",
      "r271",
      "r454",
      "r455",
      "r471",
      "r638",
      "r788"
     ]
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Income Taxes",
        "label": "Income Tax, Policy [Policy Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r188",
      "r452",
      "r453",
      "r461",
      "r462",
      "r463",
      "r467",
      "r673"
     ]
    },
    "us-gaap_IncomeTaxReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxReceivable",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income tax receivable",
        "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."
       }
      }
     },
     "auth_ref": [
      "r849"
     ]
    },
    "us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Change in the valuation allowance for net deferred income tax assets",
        "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 increase (decrease) in the valuation allowance for deferred tax assets."
       }
      }
     },
     "auth_ref": [
      "r456",
      "r788",
      "r938"
     ]
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxesPaidNet",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income taxes, net",
        "documentation": "Amount, after refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r200",
      "r465",
      "r466"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Trade receivables",
        "label": "[Increase (Decrease) in Accounts Receivable]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 16.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Income tax payable",
        "label": "[Increase (Decrease) in Income Taxes Payable]",
        "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "cxdo_IncreaseDecreaseInContractCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "IncreaseDecreaseInContractCosts",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 11.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Contract costs",
        "label": "[Contract costs]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInContractWithCustomerAsset",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Contract assets",
        "label": "[Increase (Decrease) in Contract with Customer, Asset]",
        "documentation": "Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time."
       }
      }
     },
     "auth_ref": [
      "r855"
     ]
    },
    "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInContractWithCustomerLiability",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 17.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Contract liabilities",
        "label": "[Increase (Decrease) in Contract with Customer, Liability]",
        "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable."
       }
      }
     },
     "auth_ref": [
      "r576",
      "r855"
     ]
    },
    "cxdo_IncreaseDecreaseInEquipmentFinancingReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "IncreaseDecreaseInEquipmentFinancingReceivables",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 9.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Equipment financing receivables",
        "label": "[Equipment financing receivables]",
        "documentation": "Liabilities relating to legal proceedings"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInIncomeTaxesReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInIncomeTaxesReceivable",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 13.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Income tax receivable",
        "label": "[Increase (Decrease) in Income Taxes Receivable]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInInventories",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 10.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Inventories",
        "label": "[Increase (Decrease) in Inventories]",
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in assets and liabilities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 15.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts payable and accrued expenses",
        "documentation": "The increase (decrease) during the reporting period in other obligations or expenses incurred but not yet paid."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInOtherOperatingAssets",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 14.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other assets",
        "label": "[Increase (Decrease) in Other Operating Assets]",
        "documentation": "Amount of increase (decrease) in operating assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "us-gaap_IncreaseDecreaseInPrepaidExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInPrepaidExpense",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 12.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Prepaid expenses",
        "label": "[Increase (Decrease) in Prepaid Expense]",
        "documentation": "The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "cxdo_IncreaseDueToAdditionalUnamortizedDiscounts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "IncreaseDueToAdditionalUnamortizedDiscounts",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase due to additional unamortized discounts"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase due to cash received, excluding amounts recognized as revenue during the period"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_IncrementalBorrowingRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "IncrementalBorrowingRate",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Incremental borrowing rate"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 15.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible assets, net",
        "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."
       }
      }
     },
     "auth_ref": [
      "r354",
      "r895",
      "r897"
     ]
    },
    "us-gaap_InterestExpenseDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestExpenseDebt",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Expense",
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense for debt."
       }
      }
     },
     "auth_ref": [
      "r67",
      "r409",
      "r415",
      "r782",
      "r783"
     ]
    },
    "cxdo_InterestExpenseOnMonthlyRentDepositLiabilitiesDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "InterestExpenseOnMonthlyRentDepositLiabilitiesDescription",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Monthly rent description"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InterestExpenseOther": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestExpenseOther",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": -1.0,
       "order": 14.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Interest expense",
        "label": "[Interest Expense, Other]",
        "documentation": "Amount of interest expense classified as other."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InterestIncomeExpenseNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestIncomeExpenseNet",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Interest expense",
        "label": "[Interest Income (Expense), Operating]",
        "documentation": "Amount of interest income (expense) classified as operating."
       }
      }
     },
     "auth_ref": [
      "r613",
      "r865"
     ]
    },
    "us-gaap_InterestIncomeOther": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestIncomeOther",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0,
       "order": 13.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest income",
        "verboseLabel": "Interest income",
        "documentation": "Amount of interest income earned from interest bearing assets classified as other."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InterestPaid": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestPaid",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest paid",
        "documentation": "Amount of cash paid for interest, including, but not limited to, capitalized interest and payment to settle zero-coupon bond attributable to accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount; classified as operating and investing activities."
       }
      }
     },
     "auth_ref": [
      "r856"
     ]
    },
    "us-gaap_InterestPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestPaidNet",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Interest expense",
        "label": "[Interest Paid, Excluding Capitalized Interest, Operating Activities]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r196",
      "r198",
      "r199"
     ]
    },
    "cxdo_InterestRateFinanceLeases": {
     "xbrltype": "percentItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "InterestRateFinanceLeases",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Rate- Finance Leases"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_InterestReceivedOnEquipmentFinancing": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "InterestReceivedOnEquipmentFinancing",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equipment financing revenue"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_InternalUseComputerSoftwareMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "InternalUseComputerSoftwareMember",
     "presentation": [
      "http://cxdo.com/role/PropertyAndEquipmentDetails",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Internal-use Software [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_InternationalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "InternationalMember",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "International [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryNet",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventories",
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r179",
      "r753",
      "r802"
     ]
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory",
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost."
       }
      }
     },
     "auth_ref": [
      "r110",
      "r167",
      "r178",
      "r332",
      "r333",
      "r334",
      "r577",
      "r757"
     ]
    },
    "us-gaap_LeaseholdImprovementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LeaseholdImprovementsMember",
     "presentation": [
      "http://cxdo.com/role/PropertyAndEquipmentDetails",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leasehold Improvements [Member]",
        "documentation": "Additions or improvements to assets held under a lease arrangement."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r540"
     ]
    },
    "us-gaap_LeasesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LeasesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_LessAllowanceForCreditLosses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "LessAllowanceForCreditLosses",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Less: allowance for credit losses",
        "label": "[Less: allowance for credit losses 1]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeLeasesPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeLeasesPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lease Obligations",
        "documentation": "Disclosure of accounting policy for leasing arrangement entered into by lessee."
       }
      }
     },
     "auth_ref": [
      "r535"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/LeasesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maturity of operating lease and finance lease liabilities",
        "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."
       }
      }
     },
     "auth_ref": [
      "r952"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Minimum Lease Payment",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2025",
        "label": "[Lessee, Operating Lease, Liability, to be Paid, Year One]",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2029",
        "label": "[Lessee, Operating Lease, Liability, to be Paid, Year Five]",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2028",
        "label": "[Lessee, Operating Lease, Liability, to be Paid, Year Four]",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2027",
        "label": "[Lessee, Operating Lease, Liability, to be Paid, Year Three]",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2026",
        "label": "[Lessee, Operating Lease, Liability, to be Paid, Year Two]",
        "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)."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Less: Amount Representing Interest",
        "label": "[Lessee, Operating Lease, Liability, Undiscounted Excess Amount]",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease."
       }
      }
     },
     "auth_ref": [
      "r539"
     ]
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeasesTextBlock",
     "presentation": [
      "http://cxdo.com/role/Leases"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Leases",
        "label": "Lessee, Operating Leases [Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r530"
     ]
    },
    "us-gaap_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Liabilities",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 36.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities",
        "label": "[Liabilities]",
        "documentation": "Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r44",
      "r45",
      "r46",
      "r49",
      "r50",
      "r51",
      "r52",
      "r204",
      "r313",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r484",
      "r485",
      "r486",
      "r512",
      "r687",
      "r759",
      "r828",
      "r908",
      "r956",
      "r957"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total Liabilities and Stockholders' Equity",
        "label": "[Liabilities and Equity]",
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any."
       }
      }
     },
     "auth_ref": [
      "r59",
      "r92",
      "r626",
      "r802",
      "r857",
      "r878",
      "r949"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities and Stockholders' Equity"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 26.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current liabilities",
        "label": "[Liabilities, Current]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r46",
      "r166",
      "r204",
      "r313",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r484",
      "r485",
      "r486",
      "r512",
      "r802",
      "r908",
      "r956",
      "r957"
     ]
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesCurrentAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current liabilities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LimitedPartnersCumulativeNetIncome": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LimitedPartnersCumulativeNetIncome",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Less: unearned income",
        "documentation": "Aggregate cumulative earnings allocated to the limited partners based on the sharing of income or losses between general and limited partners as specified in the partnership agreement, excluding any priority income allocations resulting from incentive distributions or special earnings allocations."
       }
      }
     },
     "auth_ref": [
      "r84"
     ]
    },
    "cxdo_LineOfCreditAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "LineOfCreditAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LineOfCreditFacilityExpirationDate1": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityExpirationDate1",
     "presentation": [
      "http://cxdo.com/role/LineOfCreditDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of credit expiry term",
        "documentation": "Date the credit facility terminates, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r43",
      "r48"
     ]
    },
    "us-gaap_LineOfCreditFacilityFairValueOfAmountOutstanding": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityFairValueOfAmountOutstanding",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LineOfCreditDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding balance",
        "documentation": "Fair value of the amount outstanding under the credit facility."
       }
      }
     },
     "auth_ref": [
      "r511"
     ]
    },
    "us-gaap_LineOfCreditFacilityInterestRateDuringPeriod": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityInterestRateDuringPeriod",
     "presentation": [
      "http://cxdo.com/role/LineOfCreditDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of credit bears interest rate",
        "documentation": "The effective interest rate during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r43",
      "r48"
     ]
    },
    "us-gaap_LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LineOfCreditDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of credit with a maximum principal amount",
        "documentation": "Maximum amount borrowed under the credit facility at any time during the period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityRemainingBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LineOfCreditDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Remaining available for borrowing",
        "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding)."
       }
      }
     },
     "auth_ref": [
      "r43",
      "r48",
      "r388"
     ]
    },
    "cxdo_LineOfCreditTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "LineOfCreditTextBlock",
     "presentation": [
      "http://cxdo.com/role/LineOfCredit"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Line of Credit",
        "label": "[Line of Credit]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermAccountsNotesAndLoansReceivableNetNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermAccountsNotesAndLoansReceivableNetNoncurrent",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-term equipment financing receivables, net",
        "documentation": "Amount, after allowance for credit loss, of accounts and financing receivables, classified as noncurrent. Includes, but is not limited to, notes and loan receivable."
       }
      }
     },
     "auth_ref": [
      "r870"
     ]
    },
    "us-gaap_LongTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebt",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Total",
        "label": "[Long-Term Debt]",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r91",
      "r405",
      "r414",
      "r780",
      "r781",
      "r800",
      "r960"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2025 remaining",
        "label": "[Long-Term Debt, Maturity, Year One]",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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)."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r206",
      "r407"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2029",
        "label": "[Long-Term Debt, Maturity, Year Five]",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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)."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r206",
      "r407"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2028",
        "label": "[Long-Term Debt, Maturity, Year Four]",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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)."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r206",
      "r407"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2027",
        "label": "[Long-Term Debt, Maturity, Year Three]",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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)."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r206",
      "r407"
     ]
    },
    "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2026",
        "label": "[Long-Term Debt, Maturity, Year Two]",
        "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing 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)."
       }
      }
     },
     "auth_ref": [
      "r9",
      "r206",
      "r407"
     ]
    },
    "cxdo_LongTermEquipmentFinancingReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "LongTermEquipmentFinancingReceivables",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 12.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-term equipment financing receivables, net of allowance of $69 and $157, respectively"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_LongTermInvestmentsAndReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "LongTermInvestmentsAndReceivables",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Equipment financing receivables, net",
        "label": "[Equipment financing receivables, net]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermInvestmentsAndReceivablesNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermInvestmentsAndReceivablesNet",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-term trade receivables, net",
        "documentation": "The total amount of investments that are intended to be held for an extended period of time (longer than one operating cycle) and amount due to the Entity from outside sources, including trade accounts receivable, notes and loans receivable, as well as any other types of receivables, net of allowances established for the purpose of reducing such investments and receivables to an amount that approximates their net realizable value."
       }
      }
     },
     "auth_ref": [
      "r848"
     ]
    },
    "us-gaap_LongTermNotesPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermNotesPayable",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 29.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes payable, net of current portion",
        "documentation": "Carrying value as of the balance sheet date of notes payable (with maturities initially due after one year or beyond the operating cycle if longer), excluding current portion."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "us-gaap_MajorCustomersPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "MajorCustomersPolicyPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Significant Customers",
        "documentation": "Disclosure of accounting policy for major customers. Major customers are those that the loss of such customers would have a material adverse effect on the entity."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r23",
      "r24",
      "r77"
     ]
    },
    "cxdo_MichiganLasVegasMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "MichiganLasVegasMember",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Michigan Las Vegas Member"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 25.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash provided by/(used for) financing activities",
        "label": "[Net Cash Provided by (Used in) Financing Activities]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r197"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "CASH FLOWS FROM FINANCING ACTIVITIES"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 24.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash provided by/(used for) investing activities",
        "label": "[Net Cash Provided by (Used in) Investing Activities]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r197"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "CASH FLOWS FROM INVESTING ACTIVITIES"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 23.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash provided by/(used for) operating activities",
        "label": "[Net Cash Provided by (Used in) Operating Activities]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r72",
      "r73",
      "r74"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "CASH FLOWS FROM OPERATING ACTIVITIES"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 2.0
      },
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 3.0
      },
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited",
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited",
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited",
      "http://cxdo.com/role/EarningsPerCommonShareDetails",
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net income/(loss)",
        "label": "[Net Income (Loss) Attributable to Parent]",
        "verboseLabel": "Net income/(loss)",
        "terseLabel": "Net income/(loss)",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r62",
      "r74",
      "r96",
      "r164",
      "r183",
      "r186",
      "r191",
      "r204",
      "r210",
      "r212",
      "r213",
      "r215",
      "r216",
      "r217",
      "r221",
      "r222",
      "r228",
      "r313",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r478",
      "r482",
      "r497",
      "r512",
      "r632",
      "r710",
      "r727",
      "r728",
      "r827",
      "r908"
     ]
    },
    "us-gaap_NetInvestmentInLeaseAllowanceForCreditLossCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetInvestmentInLeaseAllowanceForCreditLossCurrent",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Begaining balance",
        "label": "[Net Investment in Lease, Allowance for Credit Loss, Current]",
        "periodEndLabel": "Ending balance",
        "documentation": "Amount of allowance for credit loss on net investment in sales-type and direct financing leases, classified as current."
       }
      }
     },
     "auth_ref": [
      "r318"
     ]
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Recently Issued Accounting Pronouncements",
        "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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NoncashInvestingAndFinancingItemsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NoncashInvestingAndFinancingItemsAbstract",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-cash investing and financing activities"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NoninterestExpenseCommissionExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NoninterestExpenseCommissionExpense",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commissions",
        "documentation": "Amount of fees incurred for commissions on mutual funds and insurance products."
       }
      }
     },
     "auth_ref": [
      "r94"
     ]
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NonoperatingIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 17.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total other income/(expense), net",
        "label": "[Nonoperating Income (Expense)]",
        "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business)."
       }
      }
     },
     "auth_ref": [
      "r66"
     ]
    },
    "us-gaap_NonoperatingIncomeExpenseAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NonoperatingIncomeExpenseAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other income/(expense):"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NontradeReceivablesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NontradeReceivablesCurrent",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current trade receivables, net",
        "documentation": "The sum of amounts currently receivable other than from customers. For classified balance sheets, represents the current amount receivable, that is amounts expected to be collected within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r849"
     ]
    },
    "us-gaap_NotesPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NotesPayable",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Notes Payable",
        "label": "[Notes Payable]",
        "documentation": "Including the current and noncurrent portions, aggregate carrying amount of all types of notes payable, as of the balance sheet date, with initial maturities beyond one year or beyond the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r91",
      "r960",
      "r961"
     ]
    },
    "us-gaap_NotesPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NotesPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 22.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets",
      "http://cxdo.com/role/NotesPayableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes payable",
        "negatedLabel": "Less: Current Notes Payable",
        "documentation": "Sum of the carrying values as of the balance sheet date of the portions of long-term notes payable due within one year or the operating cycle if longer."
       }
      }
     },
     "auth_ref": [
      "r44",
      "r45"
     ]
    },
    "us-gaap_NotesPayableFairValueDisclosure": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NotesPayableFairValueDisclosure",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Notes Payable",
        "label": "[Notes Payable, Fair Value Disclosure]",
        "documentation": "Fair value portion of notes payable."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r44",
      "r45",
      "r943",
      "r947"
     ]
    },
    "cxdo_NotesPayableRelatedPartyClassifiedCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "NotesPayableRelatedPartyClassifiedCurrent",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetails",
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related party note payable",
        "verboseLabel": "Related party note payable"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_NovemberOneTwoThousandTwentyTwoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "NovemberOneTwoThousandTwentyTwoMember",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "November 1 2022 [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_OctoberTwoThousandTwentyFourMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "OctoberTwoThousandTwentyFourMember",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "October, 2024 [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OfficeEquipmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OfficeEquipmentMember",
     "presentation": [
      "http://cxdo.com/role/PropertyAndEquipmentDetails",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Computer and Office Equipment [Member]",
        "documentation": "Tangible personal property used in an office setting. Examples include, but are not limited to, computers, copiers and fax machine."
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "OnFebruaryTwentySevenTwoThousandTwentyThreeMember",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "On February 27, 2023"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_OneTimeFeesCommissionsAndOther": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "OneTimeFeesCommissionsAndOther",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "One time fees, commissions and other"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_OperatingCashFlowsFromFinanceLeases": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "OperatingCashFlowsFromFinanceLeases",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Cash Flows From Finance Leases"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_OperatingCashFlowsFromOperatingLeases": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "OperatingCashFlowsFromOperatingLeases",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Cash Flows From Operating Leases"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_OperatingCostsAndExpencesDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "OperatingCostsAndExpencesDescription",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Costs description"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingExpenses",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0,
       "order": 12.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total operating expenses",
        "label": "[Operating Expenses]",
        "verboseLabel": "Total operating expenses",
        "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingExpensesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingExpensesAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating expenses:",
        "verboseLabel": "Operating expenses:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 16.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income/(loss) from operations",
        "label": "[Operating Income (Loss)]",
        "verboseLabel": "Segment income/(loss) from operations",
        "documentation": "The net result for the period of deducting operating expenses from operating revenues."
       }
      }
     },
     "auth_ref": [
      "r99",
      "r760",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868"
     ]
    },
    "us-gaap_OperatingLeaseExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseExpense",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rental Expense Incurred On Operating Leases",
        "documentation": "Amount of operating lease expense. Excludes sublease income."
       }
      }
     },
     "auth_ref": [
      "r951"
     ]
    },
    "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Leases"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiability",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Present Value Of Minimum Lease Payments",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease."
       }
      }
     },
     "auth_ref": [
      "r533"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 23.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating lease liabilities",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r533"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 30.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating lease liabilities, net of current portion",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r533"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseRightOfUseAsset",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 14.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating lease right-of-use assets",
        "documentation": "Amount of lessee's right to use underlying asset under operating lease."
       }
      }
     },
     "auth_ref": [
      "r532"
     ]
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted-average Discount Rate - Operating Leases",
        "documentation": "Weighted average discount rate for operating lease calculated at point in time."
       }
      }
     },
     "auth_ref": [
      "r538",
      "r801"
     ]
    },
    "cxdo_OperatingLeaseWeightedAverageRemainingLeaseTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted-average Remaining Lease Term - Operating Leases"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_OracleMemberMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "OracleMemberMember",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Oracle [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAccruedLiabilitiesCurrent",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other",
        "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r45"
     ]
    },
    "us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAccruedLiabilitiesCurrentAndNoncurrent",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total accrued expenses",
        "documentation": "Amount of expenses incurred but not yet paid classified as other."
       }
      }
     },
     "auth_ref": [
      "r90"
     ]
    },
    "us-gaap_OtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 9.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other current assets",
        "documentation": "Amount of current assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r181",
      "r802"
     ]
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAssetsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 18.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other long-term assets",
        "documentation": "Amount of noncurrent assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r172"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited": {
       "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited",
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign currency translation gain/(loss)",
        "verboseLabel": "Foreign currency translation adjustment, net of tax",
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature."
       }
      }
     },
     "auth_ref": [
      "r4",
      "r633"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeLossNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfComprehensiveIncomeLossUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total other comprehensive income/(loss)",
        "label": "[Other Comprehensive Income (Loss), Net of Tax]",
        "documentation": "Amount after tax and reclassification adjustments of other comprehensive income (loss)."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r13",
      "r184",
      "r187",
      "r193",
      "r217",
      "r519",
      "r520",
      "r525",
      "r614",
      "r633",
      "r851",
      "r852"
     ]
    },
    "cxdo_OtherCountriesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "OtherCountriesMember",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Countries [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherDepreciationAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherDepreciationAndAmortization",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Depreciation and amortization",
        "label": "[Other Depreciation and Amortization]",
        "documentation": "Amount of expense charged against earnings to allocate the cost of tangible and intangible assets over their remaining economic lives, classified as other."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r31",
      "r63"
     ]
    },
    "us-gaap_OtherExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherExpenses",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid expense",
        "documentation": "Amount of expense classified as other."
       }
      }
     },
     "auth_ref": [
      "r64",
      "r65"
     ]
    },
    "us-gaap_OtherNoncashIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherNoncashIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Non-cash operating lease amortization",
        "label": "[Other Noncash Income (Expense)]",
        "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other."
       }
      }
     },
     "auth_ref": [
      "r74"
     ]
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherNonoperatingIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0,
       "order": 15.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other income/(expense), net",
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other."
       }
      }
     },
     "auth_ref": [
      "r68"
     ]
    },
    "us-gaap_OtherNotesPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherNotesPayable",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other note payable",
        "documentation": "Amount of long-term notes payable classified as other."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r91",
      "r960"
     ]
    },
    "us-gaap_OtherOperatingIncomeExpenseNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherOperatingIncomeExpenseNet",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other income/(expense)",
        "documentation": "The net amount of other operating income and expenses, the components of which are not separately disclosed on the income statement, from items that are associated with the entity's normal revenue producing operations."
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_OtherOperatingLeasesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "OtherOperatingLeasesMember",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Operating Leases [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherPrepaidExpenseCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherPrepaidExpenseCurrent",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/PrepaidExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other prepaid expenses",
        "documentation": "Amount of asset related to consideration paid in advance for other costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r850",
      "r884"
     ]
    },
    "us-gaap_OtherReceivables": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherReceivables",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Receivables, which are included in trade receivables, net of allowance for credit losses",
        "documentation": "Amount due from parties in nontrade transactions, classified as other."
       }
      }
     },
     "auth_ref": [
      "r175",
      "r696",
      "r767",
      "r963"
     ]
    },
    "us-gaap_OtherSellingAndMarketingExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherSellingAndMarketingExpense",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Selling and marketing expenses",
        "documentation": "Amount of selling and marketing expense classified as other."
       }
      }
     },
     "auth_ref": [
      "r64"
     ]
    },
    "cxdo_OverlandParkKansasMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "OverlandParkKansasMember",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Overland Park, Kansas [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PayablesAndAccrualsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PayablesAndAccrualsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Expenses"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PaymentsForRestructuring": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsForRestructuring",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Quartely Payment",
        "documentation": "Amount of cash payments made as the result of exit or disposal activities. Excludes payments associated with a discontinued operation or an asset retirement obligation."
       }
      }
     },
     "auth_ref": [
      "r376",
      "r854"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 18.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Purchase of property and equipment",
        "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."
       }
      }
     },
     "auth_ref": [
      "r70"
     ]
    },
    "us-gaap_PlanNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PlanNameAxis",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative",
      "http://cxdo.com/role/FairValueMeasurementsDetails",
      "http://cxdo.com/role/LeasesDetailsNarrative",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plan Name [Axis]",
        "documentation": "Information by plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r912",
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937"
     ]
    },
    "us-gaap_PlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PlanNameDomain",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative",
      "http://cxdo.com/role/FairValueMeasurementsDetails",
      "http://cxdo.com/role/LeasesDetailsNarrative",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r912",
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925",
      "r926",
      "r927",
      "r928",
      "r929",
      "r930",
      "r931",
      "r932",
      "r933",
      "r934",
      "r935",
      "r936",
      "r937"
     ]
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockParOrStatedValuePerShare",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Par Value",
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer."
       }
      }
     },
     "auth_ref": [
      "r53",
      "r416"
     ]
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockSharesAuthorized",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Authorized",
        "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."
       }
      }
     },
     "auth_ref": [
      "r53",
      "r688"
     ]
    },
    "us-gaap_PreferredStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockSharesIssued",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Issued",
        "documentation": "Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt."
       }
      }
     },
     "auth_ref": [
      "r53",
      "r416"
     ]
    },
    "us-gaap_PreferredStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockValue",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 31.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred stock, par value $0.001 per share - authorized 5,000,000 shares; none issued",
        "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."
       }
      }
     },
     "auth_ref": [
      "r53",
      "r622",
      "r802"
     ]
    },
    "us-gaap_PrepaidExpenseAndOtherAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidExpenseAndOtherAssets",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/PrepaidExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total prepaid expenses",
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidExpenseAndOtherAssetsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid Expenses"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidExpenseCurrent",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid expenses",
        "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."
       }
      }
     },
     "auth_ref": [
      "r180",
      "r335",
      "r336",
      "r754"
     ]
    },
    "cxdo_PrepaidExpensesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "PrepaidExpensesDisclosureTextBlock",
     "presentation": [
      "http://cxdo.com/role/PrepaidExpenses"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Prepaid Expenses",
        "label": "[Prepaid Expenses]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PrepaidInsurance": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidInsurance",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/PrepaidExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid corporate insurance",
        "documentation": "Amount of asset related to consideration paid in advance for insurance that provides economic benefits within a future period of one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r755",
      "r776",
      "r884"
     ]
    },
    "cxdo_PrepaidNasdaqListingFee": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "PrepaidNasdaqListingFee",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/PrepaidExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid nasdaq listing fee"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PrepaidReinsurancePremiums": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidReinsurancePremiums",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/PrepaidExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid employee insurance premiums",
        "documentation": "The unexpired portion of premiums ceded on policies in force as of the balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r656",
      "r670"
     ]
    },
    "cxdo_PrepaidSoftwareServices": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "PrepaidSoftwareServices",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/PrepaidExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid software services and support"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_PrepaidexpensesForUserGroupMeeting": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "PrepaidexpensesForUserGroupMeeting",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/PrepaidExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "User group meeting fees"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_PriorMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "PriorMember",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prior [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProceedsFromStockOptionsExercised": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromStockOptionsExercised",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0,
       "order": 21.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Proceeds from exercise of options",
        "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r12"
     ]
    },
    "us-gaap_ProductMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProductMember",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product",
        "documentation": "Article or substance produced by nature, labor or machinery."
       }
      }
     },
     "auth_ref": [
      "r784"
     ]
    },
    "srt_ProductOrServiceAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ProductOrServiceAxis",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product Or Service Axis",
        "documentation": "Information by product and service, or group of similar products and similar services."
       }
      }
     },
     "auth_ref": [
      "r143",
      "r144",
      "r145",
      "r146",
      "r147",
      "r148",
      "r159",
      "r275",
      "r578",
      "r650",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r657",
      "r751",
      "r784",
      "r812",
      "r813",
      "r814",
      "r817",
      "r818",
      "r846",
      "r904",
      "r905",
      "r911",
      "r965",
      "r967",
      "r968",
      "r969",
      "r970",
      "r971",
      "r972",
      "r973",
      "r974",
      "r975",
      "r976",
      "r977",
      "r978",
      "r979",
      "r980",
      "r981",
      "r982",
      "r983",
      "r984",
      "r985",
      "r986",
      "r987",
      "r988",
      "r989",
      "r990",
      "r991",
      "r992",
      "r993",
      "r994"
     ]
    },
    "cxdo_ProductRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ProductRevenue",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_Revenues",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product revenue"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ProductWarrantiesAccrualPeriodIncreaseDecrease": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ProductWarrantiesAccrualPeriodIncreaseDecrease",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrual For Warranties"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProductWarrantyAccrual": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProductWarrantyAccrual",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Beginning Balance",
        "label": "[Standard and Extended Product Warranty Accrual]",
        "periodEndLabel": "Ending Balance",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers."
       }
      }
     },
     "auth_ref": [
      "r90",
      "r382",
      "r384",
      "r386"
     ]
    },
    "cxdo_ProductWarrantyAccrual1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ProductWarrantyAccrual1",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product Warranty Liability"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProductWarrantyAccrualPayments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProductWarrantyAccrualPayments",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Warranty Settlements",
        "label": "[Standard and Extended Product Warranty Accrual, Decrease for Payments]",
        "documentation": "Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty."
       }
      }
     },
     "auth_ref": [
      "r385"
     ]
    },
    "us-gaap_ProductWarrantyExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProductWarrantyExpense",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product Warranty Expense",
        "documentation": "The expense charged against earnings for the period pertaining to standard and extended warranties on the entity's goods and services granted to customers."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r906"
     ]
    },
    "srt_ProductsAndServicesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ProductsAndServicesDomain",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Product or service, or a group of similar products or similar services."
       }
      }
     },
     "auth_ref": [
      "r143",
      "r144",
      "r145",
      "r146",
      "r147",
      "r148",
      "r159",
      "r275",
      "r578",
      "r650",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r657",
      "r751",
      "r784",
      "r812",
      "r813",
      "r814",
      "r817",
      "r818",
      "r846",
      "r904",
      "r905",
      "r911",
      "r965",
      "r967",
      "r968",
      "r969",
      "r970",
      "r971",
      "r972",
      "r973",
      "r974",
      "r975",
      "r976",
      "r977",
      "r978",
      "r979",
      "r980",
      "r981",
      "r982",
      "r983",
      "r984",
      "r985",
      "r986",
      "r987",
      "r988",
      "r989",
      "r990",
      "r991",
      "r992",
      "r993",
      "r994"
     ]
    },
    "cxdo_ProductsServicesAndFeesRecognizedAtAPointInTime": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ProductsServicesAndFeesRecognizedAtAPointInTime",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Products, services, and fees recognized at a point in time"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ProductsServicesAndFeesTransferredOverTime": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ProductsServicesAndFeesTransferredOverTime",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Products, services, and fees transferred over time"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProfessionalAndContractServicesExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProfessionalAndContractServicesExpense",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Contractor expense",
        "documentation": "Professional and contract service expense includes cost reimbursements for support services related to contracted projects, outsourced management, technical and staff support."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProfessionalFees": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProfessionalFees",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Professional services and other",
        "documentation": "A fee charged for services from professionals such as doctors, lawyers and accountants. The term is often expanded to include other professions, for example, pharmacists charging to maintain a medicinal profile of a client or customer."
       }
      }
     },
     "auth_ref": [
      "r766",
      "r827",
      "r997",
      "r998"
     ]
    },
    "cxdo_PromissoryNote": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "PromissoryNote",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Promissory note"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_PropertyAndEquipmentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "PropertyAndEquipmentAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Property and Equipment"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "presentation": [
      "http://cxdo.com/role/PropertyAndEquipmentDetails",
      "http://cxdo.com/role/SegmentReportingDetails",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Lived Tangible Asset [Axis]",
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale."
       }
      }
     },
     "auth_ref": [
      "r8",
      "r540"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "presentation": [
      "http://cxdo.com/role/PropertyAndEquipment"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Property and Equipment",
        "label": "Property, Plant and Equipment Disclosure [Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r79",
      "r113",
      "r116",
      "r117"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentGross",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/PropertyAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property And Equipment, Gross",
        "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."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r168",
      "r630"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 13.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets",
      "http://cxdo.com/role/PropertyAndEquipmentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property and equipment, net",
        "verboseLabel": "Total Property And Equipment, Net",
        "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."
       }
      }
     },
     "auth_ref": [
      "r8",
      "r540",
      "r619",
      "r630",
      "r802"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentOwnedAccumulatedDepreciation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentOwnedAccumulatedDepreciation",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related accumulated depreciation",
        "documentation": "Amount of accumulated depreciation from long-lived, depreciable flight asset owned. Excludes right-of-use asset from finance lease for flight asset."
       }
      }
     },
     "auth_ref": [
      "r900"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Property and Equipment",
        "label": "Property, Plant and Equipment, Policy [Policy Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r8",
      "r113",
      "r116",
      "r628"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "presentation": [
      "http://cxdo.com/role/PropertyAndEquipmentTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Property And Equipment",
        "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."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "presentation": [
      "http://cxdo.com/role/PropertyAndEquipmentDetails",
      "http://cxdo.com/role/SegmentReportingDetails",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1"
     ],
     "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."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r540"
     ]
    },
    "cxdo_PropertyPlantsAndEquipmentEstimatedUsefulLives": {
     "xbrltype": "stringItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "PropertyPlantsAndEquipmentEstimatedUsefulLives",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Depreciable lives"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProvisionForOtherCreditLosses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProvisionForOtherCreditLosses",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2",
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Provision",
        "label": "[Provision for Other Credit Losses]",
        "terseLabel": "Provision",
        "documentation": "Amount of expense related to credit loss from transactions other than loan and lease transactions."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r93"
     ]
    },
    "us-gaap_PurchaseObligation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PurchaseObligation",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative",
      "http://cxdo.com/role/RevenueDetails5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Total",
        "label": "[Purchase Obligation]",
        "terseLabel": "Purchase obligation",
        "documentation": "Minimum amount of purchase arrangement in which the entity has agreed to expend funds to procure goods or services from a supplier."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PurchaseObligationDueAfterFifthYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PurchaseObligationDueAfterFifthYear",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2029 and thereafter",
        "documentation": "Amount of purchase arrangement to be paid after fifth fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PurchaseObligationDueInFifthYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PurchaseObligationDueInFifthYear",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2028",
        "documentation": "Amount of purchase arrangement to be paid in fifth fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PurchaseObligationDueInFourthYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PurchaseObligationDueInFourthYear",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2027",
        "documentation": "Amount of purchase arrangement to be paid in fourth fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PurchaseObligationDueInSecondYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PurchaseObligationDueInSecondYear",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2025",
        "documentation": "Amount of purchase arrangement to be paid in second fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PurchaseObligationDueInThirdYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PurchaseObligationDueInThirdYear",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2026",
        "documentation": "Amount of purchase arrangement to be paid in third fiscal year following current fiscal year. Includes, but is not limited to, recorded and unrecorded purchase obligations, long-term purchase commitment, and short-term purchase commitment. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ReceivablesNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ReceivablesNetCurrent",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current equipment financing receivables, net",
        "documentation": "The total amount due to the entity within one year of the balance sheet date (or one operating cycle, if longer) from outside sources, including trade accounts receivable, notes and loans receivable, as well as any other types of receivables, net of allowances established for the purpose of reducing such receivables to an amount that approximates their net realizable value."
       }
      }
     },
     "auth_ref": [
      "r802"
     ]
    },
    "cxdo_RecentlyAdoptedAccountingPronouncementsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "RecentlyAdoptedAccountingPronouncementsPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Recently Adopted Accounting Pronouncements"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock",
     "presentation": [
      "http://cxdo.com/role/SegmentsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Information on reportable segments and reconciliation to condensed consolidated net (loss) income",
        "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."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r29"
     ]
    },
    "us-gaap_ReinsuranceCostsAndRecoveriesNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ReinsuranceCostsAndRecoveriesNet",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Recoveries and others",
        "label": "[Policyholder Benefits and Claims Incurred, Assumed and Ceded]",
        "documentation": "Amount of recovery (expense) related to provision for policy benefits and costs incurred for policies assumed and ceded."
       }
      }
     },
     "auth_ref": [
      "r959"
     ]
    },
    "us-gaap_RelatedPartyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RelatedPartyDomain",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Related and nonrelated parties. Related party includes, but is not limited to, affiliate, other entity for which investment is accounted for under equity method, trust for benefit of employee, principal owner, management, and member of immediate family, and other party that may be prevented from pursuing separate interests because of control, significant influence, or ownership interest."
       }
      }
     },
     "auth_ref": [
      "r280",
      "r434",
      "r544",
      "r545",
      "r621",
      "r627",
      "r682",
      "r683",
      "r684",
      "r685",
      "r686",
      "r707",
      "r709",
      "r732"
     ]
    },
    "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RelatedPartyTransactionsByRelatedPartyAxis",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Related Party Transactions By Related Party Axis",
        "documentation": "Information by related and nonrelated parties. Related party includes, but is not limited to, affiliate, other entity for which investment is accounted for under equity method, trust for benefit of employee, principal owner, management, and member of immediate family, and other party that may be prevented from pursuing separate interests because of control, significant influence, or ownership interest."
       }
      }
     },
     "auth_ref": [
      "r280",
      "r434",
      "r544",
      "r545",
      "r621",
      "r627",
      "r682",
      "r683",
      "r684",
      "r685",
      "r686",
      "r707",
      "r709",
      "r732",
      "r955"
     ]
    },
    "us-gaap_RepaymentsOfNotesPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RepaymentsOfNotesPayable",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 20.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Repayments made on notes payable",
        "label": "[Repayments of Notes Payable]",
        "documentation": "The cash outflow for a borrowing supported by a written promise to pay an obligation."
       }
      }
     },
     "auth_ref": [
      "r71"
     ]
    },
    "cxdo_ReportableSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ReportableSegmentMember",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Reportable Segment [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ResearchAndDevelopmentExpense",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 10.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Research and development",
        "documentation": "Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development activity."
       }
      }
     },
     "auth_ref": [
      "r450",
      "r750",
      "r766",
      "r958"
     ]
    },
    "us-gaap_ResearchAndDevelopmentExpensePolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ResearchAndDevelopmentExpensePolicy",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Research and Development",
        "documentation": "Disclosure of accounting policy for costs it has incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process."
       }
      }
     },
     "auth_ref": [
      "r449"
     ]
    },
    "srt_RestatementAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RestatementAxis",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revision of Prior Period [Axis]",
        "documentation": "Information by adjustment to previously issued financial statements. Includes, but is not limited to, adjustment for retrospective application of amendment to accounting standards, other change in accounting principle, correction of error, and other revision."
       }
      }
     },
     "auth_ref": [
      "r160",
      "r162",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r223",
      "r235",
      "r315",
      "r316",
      "r476",
      "r477",
      "r478",
      "r479",
      "r481",
      "r482",
      "r494",
      "r495",
      "r496",
      "r497",
      "r527",
      "r529",
      "r542",
      "r543",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r666",
      "r667",
      "r668",
      "r669",
      "r671",
      "r869"
     ]
    },
    "srt_RestatementDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RestatementDomain",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Adjustment to previously issued financial statements. Includes, but is not limited to, adjustment for retrospective application of amendment to accounting standards, other change in accounting principle, correction of error, and other revision."
       }
      }
     },
     "auth_ref": [
      "r160",
      "r162",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r212",
      "r213",
      "r214",
      "r215",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r223",
      "r235",
      "r315",
      "r316",
      "r476",
      "r477",
      "r478",
      "r479",
      "r481",
      "r482",
      "r494",
      "r495",
      "r496",
      "r497",
      "r527",
      "r529",
      "r542",
      "r543",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r666",
      "r667",
      "r668",
      "r669",
      "r671",
      "r869"
     ]
    },
    "cxdo_RestonVirginiaMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "RestonVirginiaMember",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reston, Virginia [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 34.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated deficit",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r56",
      "r83",
      "r625",
      "r664",
      "r669",
      "r674",
      "r689",
      "r802"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Deficit",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r161",
      "r207",
      "r208",
      "r209",
      "r211",
      "r217",
      "r220",
      "r222",
      "r314",
      "r317",
      "r367",
      "r468",
      "r469",
      "r475",
      "r476",
      "r477",
      "r479",
      "r481",
      "r482",
      "r487",
      "r489",
      "r490",
      "r492",
      "r495",
      "r528",
      "r531",
      "r660",
      "r662",
      "r676",
      "r999"
     ]
    },
    "cxdo_RevenueConcentrationRiskPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "RevenueConcentrationRiskPercentage",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue percentage generated from customers"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerIncludingAssessedTax",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Revenue",
        "label": "[Revenue from Contract with Customer, Including Assessed Tax]",
        "documentation": "Amount, including 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."
       }
      }
     },
     "auth_ref": [
      "r97",
      "r98",
      "r236",
      "r243",
      "r244",
      "r265",
      "r271",
      "r275",
      "r277",
      "r279",
      "r430",
      "r431",
      "r578"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "presentation": [
      "http://cxdo.com/role/Revenue"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Revenue",
        "label": "Revenue from Contract with Customer [Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r119",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r433"
     ]
    },
    "us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromExternalCustomersByGeographicAreasTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/SegmentsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Revenue by geography",
        "documentation": "Tabular disclosure of revenue from external customers by geographic areas attributed to the entity's country of domicile and to foreign countries from which the entity derives revenue."
       }
      }
     },
     "auth_ref": [
      "r76"
     ]
    },
    "cxdo_RevenueRecognition": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "RevenueRecognition",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue recognition. Total"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_RevenueRecognitionSalesOfServicesPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "RevenueRecognitionSalesOfServicesPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Service, Software Solutions and Product Revenue Recognition"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_RevenueRecognizedThatWasIncludedInContractLiabilityBalance": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "RevenueRecognizedThatWasIncludedInContractLiabilityBalance",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue recognized that was included in the contract liability balance at the beginning of the period"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/RevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Performance obligations",
        "documentation": "Tabular disclosure of expected timing for satisfying remaining performance obligation."
       }
      }
     },
     "auth_ref": [
      "r834"
     ]
    },
    "us-gaap_Revenues": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Revenues",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0,
       "order": 11.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://cxdo.com/role/SegmentReportingDetails",
      "http://cxdo.com/role/SegmentReportingDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total revenue",
        "label": "[Revenues]",
        "verboseLabel": "Total revenue",
        "terseLabel": "Revenues",
        "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss)."
       }
      }
     },
     "auth_ref": [
      "r97",
      "r98",
      "r192",
      "r204",
      "r236",
      "r243",
      "r244",
      "r265",
      "r271",
      "r275",
      "r277",
      "r279",
      "r313",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r512",
      "r618",
      "r766",
      "r908"
     ]
    },
    "us-gaap_RevenuesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenuesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additions to ROU assets obtained from New finance lease liabilities",
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for finance lease liability."
       }
      }
     },
     "auth_ref": [
      "r537",
      "r801"
     ]
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/LeasesDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additions to ROU assets obtained from New operating lease liabilities",
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r537",
      "r801"
     ]
    },
    "us-gaap_SalesAndExciseTaxPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SalesAndExciseTaxPayableCurrent",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued Sales And Telecommunications Taxes",
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred through that date and payable for statutory sales and use taxes, including value added tax. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r42"
     ]
    },
    "us-gaap_SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of financing receivables future contractual maturities",
        "documentation": "Tabular disclosure of maturity of undiscounted cash flows to be received on annual basis for sales-type and direct financing leases receivable. Includes, but is not limited to, reconciliation to lease receivable recognized in statement of financial position."
       }
      }
     },
     "auth_ref": [
      "r541"
     ]
    },
    "cxdo_SanDiegoCaliforniaMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "SanDiegoCaliforniaMember",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "San Diego, California [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_ScenarioPreviouslyReportedMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ScenarioPreviouslyReportedMember",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "As Previously Reported [Member]",
        "documentation": "Represents amount as previously reported before adjustment for retrospective application of amendment to accounting standards, other change in accounting principle, correction of error, and other revision."
       }
      }
     },
     "auth_ref": [
      "r162",
      "r207",
      "r209",
      "r210",
      "r211",
      "r212",
      "r213",
      "r222",
      "r235",
      "r476",
      "r478",
      "r479",
      "r481",
      "r482",
      "r494",
      "r495",
      "r496",
      "r527",
      "r529",
      "r660",
      "r661",
      "r662",
      "r663",
      "r664",
      "r665",
      "r666",
      "r667",
      "r668",
      "r669",
      "r671",
      "r835",
      "r836",
      "r837",
      "r838",
      "r861",
      "r869",
      "r879",
      "r880",
      "r941",
      "r953",
      "r954"
     ]
    },
    "cxdo_ScheduleOFtradeReceivablesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ScheduleOFtradeReceivablesTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of trade receivables balance consists of traditional trade receivables"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of accrued expenses",
        "documentation": "Tabular disclosure of the components of accrued liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ScheduleOfAgingOfReceivablesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ScheduleOfAgingOfReceivablesTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Aging of Receivables"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ScheduleOfAllowanceForCreditLossestableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ScheduleOfAllowanceForCreditLossestableTextBlock",
     "presentation": [
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Schedule of allowance for credit losses",
        "label": "[Schedule of allowance for credit losses]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
     "presentation": [
      "http://cxdo.com/role/EarningsPerCommonShareTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of common stock not included in the computation of diluted income per share",
        "documentation": "Tabular disclosure of securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities."
       }
      }
     },
     "auth_ref": [
      "r21"
     ]
    },
    "cxdo_ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/LeasesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of cash paid for amounts included in the measurement of lease liabilities"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of financing receivables and current period gross write offs"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfDebtTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfDebtTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/NotesPayableTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of notes payable",
        "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/EarningsPerCommonShareTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of basic and diluted net income per common share",
        "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."
       }
      }
     },
     "auth_ref": [
      "r863"
     ]
    },
    "us-gaap_ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of financing receivables",
        "documentation": "Tabular disclosure of financing receivable on nonaccrual status."
       }
      }
     },
     "auth_ref": [
      "r107",
      "r326"
     ]
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of intangible assets",
        "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment."
       }
      }
     },
     "auth_ref": [
      "r778",
      "r894"
     ]
    },
    "cxdo_ScheduleOfGoodwillCarryingAmountTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ScheduleOfGoodwillCarryingAmountTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of goodwill carrying amount"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Estimated useful life of Intangible assets"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_ScheduleOfLeaseTermAndDiscountTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ScheduleOfLeaseTermAndDiscountTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/LeasesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of lease term and discount rate"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/NotesPayableTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of principal payments of notes payable",
        "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "cxdo_ScheduleOfPrepaidExpensesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ScheduleOfPrepaidExpensesTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/PrepaidExpensesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Prepaid expenses"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/AccruedExpensesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of product warranty liabilities",
        "documentation": "Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability."
       }
      }
     },
     "auth_ref": [
      "r383"
     ]
    },
    "cxdo_ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Estimated useful life of property and equipment"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SecuredLongTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SecuredLongTermDebt",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/NotesPayableDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes Payable, Net Of Current Portion",
        "documentation": "Carrying amount of collateralized debt obligations with maturities initially due after one year or beyond the operating cycle, if longer, excluding the current portion. Obligations include, but not limited to, mortgage loans, chattel loans, and other borrowings secured by assets."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "us-gaap_SecuritiesBorrowedAllowanceForCreditLossTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SecuritiesBorrowedAllowanceForCreditLossTableTextBlock",
     "presentation": [
      "http://cxdo.com/role/RevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of allowance for credit losses",
        "documentation": "Tabular disclosure of allowance for credit loss on securities borrowed."
       }
      }
     },
     "auth_ref": [
      "r882"
     ]
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "Security12bTitle",
     "presentation": [
      "http://cxdo.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security 12b Title",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r829"
     ]
    },
    "us-gaap_SegmentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentDomain",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails",
      "http://cxdo.com/role/RevenueDetails5",
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "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."
       }
      }
     },
     "auth_ref": [
      "r97",
      "r98",
      "r99",
      "r100",
      "r236",
      "r239",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r255",
      "r256",
      "r257",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r271",
      "r272",
      "r273",
      "r279",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r365",
      "r378",
      "r379",
      "r639",
      "r640",
      "r641",
      "r642",
      "r643",
      "r644",
      "r645",
      "r646",
      "r647",
      "r648",
      "r649",
      "r763",
      "r766",
      "r767",
      "r777",
      "r816",
      "r965",
      "r967",
      "r968",
      "r969",
      "r970",
      "r971",
      "r972",
      "r973",
      "r974",
      "r975",
      "r976",
      "r977",
      "r978",
      "r979",
      "r980",
      "r981",
      "r982",
      "r983",
      "r984",
      "r985",
      "r986",
      "r987",
      "r988",
      "r989",
      "r990",
      "r991",
      "r992",
      "r993",
      "r994"
     ]
    },
    "srt_SegmentGeographicalDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "SegmentGeographicalDomain",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4",
      "http://cxdo.com/role/SegmentReportingDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Geographical area."
       }
      }
     },
     "auth_ref": [
      "r139",
      "r140",
      "r141",
      "r142",
      "r149",
      "r150",
      "r151",
      "r152",
      "r153",
      "r154",
      "r155",
      "r156",
      "r157",
      "r158",
      "r277",
      "r278",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r587",
      "r588",
      "r589",
      "r590",
      "r591",
      "r592",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r600",
      "r601",
      "r602",
      "r603",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r678",
      "r679",
      "r680",
      "r733",
      "r734",
      "r735",
      "r736",
      "r737",
      "r741",
      "r742",
      "r743",
      "r744",
      "r745",
      "r746",
      "r747",
      "r748",
      "r749",
      "r752",
      "r785",
      "r804",
      "r805",
      "r806",
      "r807",
      "r808",
      "r809",
      "r810",
      "r811",
      "r815",
      "r821",
      "r911",
      "r965",
      "r967",
      "r968",
      "r970",
      "r971",
      "r972",
      "r973",
      "r974",
      "r975",
      "r976",
      "r977",
      "r978",
      "r979",
      "r980",
      "r981",
      "r982",
      "r983",
      "r984",
      "r985",
      "r986",
      "r987",
      "r988",
      "r989",
      "r990",
      "r991",
      "r992",
      "r993",
      "r994"
     ]
    },
    "us-gaap_SegmentReportingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingDisclosureTextBlock",
     "presentation": [
      "http://cxdo.com/role/SegmentReporting"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Segment Reporting",
        "label": "Segment Reporting Disclosure [Text Block]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r100",
      "r236",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r254",
      "r256",
      "r257",
      "r269",
      "r270",
      "r271",
      "r272",
      "r273",
      "r275",
      "r276",
      "r279",
      "r761",
      "r764",
      "r765",
      "r766",
      "r768",
      "r770",
      "r771"
     ]
    },
    "us-gaap_SegmentReportingOtherItemAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingOtherItemAmount",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other segment items(1)",
        "documentation": "Amount of other expense (income) and loss (gain) calculated as difference between segment revenue and separately disclosed expense category to arrive at segment profit (loss)."
       }
      }
     },
     "auth_ref": [
      "r236",
      "r256",
      "r257",
      "r271",
      "r766"
     ]
    },
    "us-gaap_SegmentReportingPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingPolicyPolicyTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Segments",
        "documentation": "Disclosure of accounting policy for segment reporting."
       }
      }
     },
     "auth_ref": [
      "r258",
      "r259",
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r274",
      "r277",
      "r762",
      "r763",
      "r769"
     ]
    },
    "us-gaap_SellingAndMarketingExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SellingAndMarketingExpense",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_OperatingExpenses",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Selling and marketing",
        "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SellingAndMarketingExpenseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SellingAndMarketingExpenseMember",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Selling and Marketing",
        "documentation": "Primary financial statement caption encompassing selling and marketing expense."
       }
      }
     },
     "auth_ref": [
      "r64"
     ]
    },
    "cxdo_ServiceContractAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ServiceContractAmount",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non cancellable service contract amount"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ServiceMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ServiceMember",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Service",
        "documentation": "Assistance, including, but not limited to, technology, license and maintenance, license and service, maintenance, oil and gas, and financial service."
       }
      }
     },
     "auth_ref": [
      "r784"
     ]
    },
    "cxdo_ServiceRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "ServiceRevenue",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_Revenues",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Service revenue"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensation",
     "crdr": "debit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Share-based compensation",
        "label": "[Share-Based Payment Arrangement, Noncash Expense]",
        "documentation": "Amount of noncash expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock-Based Compensation",
        "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."
       }
      }
     },
     "auth_ref": [
      "r435",
      "r437",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445",
      "r446",
      "r447"
     ]
    },
    "us-gaap_SharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharesIssued",
     "presentation": [
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Balance, shares",
        "label": "[Shares, Issued]",
        "periodEndLabel": "Balance, shares",
        "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."
       }
      }
     },
     "auth_ref": [
      "r11"
     ]
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Significant Accounting Policies",
        "label": "Significant Accounting Policies [Text Block]",
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r75",
      "r202"
     ]
    },
    "us-gaap_SoftwareDevelopmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SoftwareDevelopmentMember",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Software Solutions",
        "documentation": "Internally developed software for sale, licensing or long-term internal use."
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_SoftwareLicenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "SoftwareLicenses",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Software licenses"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_SoftwareSolutionSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "SoftwareSolutionSegmentMember",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Software Solution Segment"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_SoftwareSolutionsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "SoftwareSolutionsMember",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Software Solutions [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_SoftwareSolutionsRevenue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "SoftwareSolutionsRevenue",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited": {
       "parentTag": "us-gaap_Revenues",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Software solutions revenue"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_SoftwareSolutionsRevenueMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "SoftwareSolutionsRevenueMember",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Software Solutions Revenue"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_SoftwareSolutionsSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "SoftwareSolutionsSegmentMember",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Software Solutions Segment [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StandardProductWarrantyPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StandardProductWarrantyPolicy",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product Warranty",
        "documentation": "Disclosure of accounting policy for standard warranties including the methodology for measuring the liability."
       }
      }
     },
     "auth_ref": [
      "r907"
     ]
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementBusinessSegmentsAxis",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails",
      "http://cxdo.com/role/RevenueDetails5",
      "http://cxdo.com/role/SegmentReportingDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segments [Axis]",
        "documentation": "Information by business segments."
       }
      }
     },
     "auth_ref": [
      "r97",
      "r98",
      "r99",
      "r100",
      "r163",
      "r236",
      "r239",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r255",
      "r256",
      "r257",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r271",
      "r272",
      "r273",
      "r279",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r365",
      "r369",
      "r378",
      "r379",
      "r639",
      "r640",
      "r641",
      "r642",
      "r643",
      "r644",
      "r645",
      "r646",
      "r647",
      "r648",
      "r649",
      "r763",
      "r766",
      "r767",
      "r777",
      "r816",
      "r965",
      "r967",
      "r968",
      "r969",
      "r970",
      "r971",
      "r972",
      "r973",
      "r974",
      "r975",
      "r976",
      "r977",
      "r978",
      "r979",
      "r980",
      "r981",
      "r982",
      "r983",
      "r984",
      "r985",
      "r986",
      "r987",
      "r988",
      "r989",
      "r990",
      "r991",
      "r992",
      "r993",
      "r994"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r54",
      "r57",
      "r58",
      "r161",
      "r189",
      "r190",
      "r191",
      "r207",
      "r208",
      "r209",
      "r211",
      "r217",
      "r220",
      "r222",
      "r237",
      "r314",
      "r317",
      "r367",
      "r418",
      "r468",
      "r469",
      "r475",
      "r476",
      "r477",
      "r479",
      "r481",
      "r482",
      "r487",
      "r488",
      "r489",
      "r490",
      "r491",
      "r492",
      "r495",
      "r519",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r528",
      "r531",
      "r543",
      "r633",
      "r660",
      "r661",
      "r662",
      "r676",
      "r729"
     ]
    },
    "srt_StatementGeographicalAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "StatementGeographicalAxis",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4",
      "http://cxdo.com/role/SegmentReportingDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]",
        "documentation": "Information by geographical components."
       }
      }
     },
     "auth_ref": [
      "r139",
      "r140",
      "r141",
      "r142",
      "r149",
      "r150",
      "r151",
      "r152",
      "r153",
      "r154",
      "r155",
      "r156",
      "r157",
      "r158",
      "r277",
      "r278",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r587",
      "r588",
      "r589",
      "r590",
      "r591",
      "r592",
      "r593",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r600",
      "r601",
      "r602",
      "r603",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r678",
      "r679",
      "r680",
      "r733",
      "r734",
      "r735",
      "r736",
      "r737",
      "r741",
      "r742",
      "r743",
      "r744",
      "r745",
      "r746",
      "r747",
      "r748",
      "r749",
      "r752",
      "r785",
      "r804",
      "r805",
      "r806",
      "r807",
      "r808",
      "r809",
      "r810",
      "r811",
      "r815",
      "r821",
      "r911",
      "r965",
      "r967",
      "r968",
      "r970",
      "r971",
      "r972",
      "r973",
      "r974",
      "r975",
      "r976",
      "r977",
      "r978",
      "r979",
      "r980",
      "r981",
      "r982",
      "r983",
      "r984",
      "r985",
      "r986",
      "r987",
      "r988",
      "r989",
      "r990",
      "r991",
      "r992",
      "r993",
      "r994"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementLineItems",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative",
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited",
      "http://cxdo.com/role/EarningsPerCommonShareDetails1",
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2",
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3",
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4",
      "http://cxdo.com/role/FairValueMeasurementsDetails",
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails",
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative",
      "http://cxdo.com/role/LeasesDetailsNarrative",
      "http://cxdo.com/role/NotesPayableDetailsNarrative",
      "http://cxdo.com/role/PropertyAndEquipmentDetails",
      "http://cxdo.com/role/RevenueDetails",
      "http://cxdo.com/role/RevenueDetails2",
      "http://cxdo.com/role/RevenueDetails5",
      "http://cxdo.com/role/SegmentReportingDetails",
      "http://cxdo.com/role/SegmentReportingDetails1",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Line Items]",
        "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."
       }
      }
     },
     "auth_ref": [
      "r207",
      "r208",
      "r209",
      "r237",
      "r531",
      "r578",
      "r672",
      "r677",
      "r681",
      "r682",
      "r683",
      "r684",
      "r685",
      "r686",
      "r688",
      "r691",
      "r692",
      "r693",
      "r694",
      "r695",
      "r698",
      "r699",
      "r700",
      "r701",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r709",
      "r711",
      "r712",
      "r714",
      "r715",
      "r716",
      "r717",
      "r718",
      "r719",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725",
      "r729",
      "r822"
     ]
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Statements of Cash Flows (Unaudited)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Balance Sheets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Condensed Consolidated Statements of Comprehensive Income(Loss) (Unaudited)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Statements of Stockholders' Equity (Unaudited)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementTable",
     "presentation": [
      "http://cxdo.com/role/CommitmentsAndContingenciesDetailsNarrative",
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited",
      "http://cxdo.com/role/EarningsPerCommonShareDetails1",
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails2",
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails3",
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4",
      "http://cxdo.com/role/FairValueMeasurementsDetails",
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails",
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative",
      "http://cxdo.com/role/LeasesDetailsNarrative",
      "http://cxdo.com/role/NotesPayableDetailsNarrative",
      "http://cxdo.com/role/PropertyAndEquipmentDetails",
      "http://cxdo.com/role/RevenueDetails",
      "http://cxdo.com/role/RevenueDetails2",
      "http://cxdo.com/role/RevenueDetails5",
      "http://cxdo.com/role/SegmentReportingDetails",
      "http://cxdo.com/role/SegmentReportingDetails1",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Table]",
        "documentation": "Disclosure of information about statement of comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity."
       }
      }
     },
     "auth_ref": [
      "r207",
      "r208",
      "r209",
      "r237",
      "r280",
      "r531",
      "r578",
      "r672",
      "r677",
      "r681",
      "r682",
      "r683",
      "r684",
      "r685",
      "r686",
      "r688",
      "r691",
      "r692",
      "r693",
      "r694",
      "r695",
      "r698",
      "r699",
      "r700",
      "r701",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r709",
      "r711",
      "r712",
      "r714",
      "r715",
      "r716",
      "r717",
      "r718",
      "r719",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725",
      "r729",
      "r822"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "presentation": [
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuance of common stock for exercise of stock options, shares",
        "documentation": "Number of share options (or share units) exercised during the current period."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r53",
      "r54",
      "r83",
      "r438"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Issuance of common stock for exercise of stock options, amount",
        "documentation": "Value of stock issued as a result of the exercise of stock options."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r54",
      "r57",
      "r58",
      "r83"
     ]
    },
    "us-gaap_StockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockOptionMember",
     "presentation": [
      "http://cxdo.com/role/EarningsPerCommonShareDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Options [Member]",
        "documentation": "Contracts conveying rights, but not obligations, to buy or sell a specific quantity of stock at a specified price during a specified period (an American option) or at a specified date (a European option)."
       }
      }
     },
     "auth_ref": [
      "r821"
     ]
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 37.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets",
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total stockholders' equity",
        "label": "[Equity, Attributable to Parent]",
        "periodStartLabel": "Balance, amount",
        "periodEndLabel": "Balance, amount",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r54",
      "r57",
      "r58",
      "r78",
      "r690",
      "r708",
      "r730",
      "r731",
      "r802",
      "r828",
      "r857",
      "r878",
      "r949",
      "r999"
     ]
    },
    "us-gaap_StockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquityAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' equity:"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_SubscriptionMaintenanceAndSupport": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "SubscriptionMaintenanceAndSupport",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subscription maintenance and support"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SubsegmentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SubsegmentsAxis",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsegments [Axis]",
        "documentation": "Information by business subsegments."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SubsegmentsDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SubsegmentsDomain",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Divisions of a component 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."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SupplementalCashFlowInformationAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supplemental disclosure of cash flow information:"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TaxesPaidOnTheNetSettlementOfStockOptionAndRsus": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TaxesPaidOnTheNetSettlementOfStockOptionAndRsus",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 22.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfCashFlowsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Taxes paid on the net settlement of stock options and RSUs",
        "label": "[Taxes paid on the net settlement of stock options and RSUs]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Taxes paid on the net settlement of stock options and RSUs"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TaxesPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TaxesPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 24.0
      }
     },
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income tax payable",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r44",
      "r45"
     ]
    },
    "cxdo_TelecommunicationsServices": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TelecommunicationsServices",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Telecommunications services"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TelecommunicationsServicesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TelecommunicationsServicesMember",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Telecommunications Services [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TempeArizoneMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TempeArizoneMember",
     "presentation": [
      "http://cxdo.com/role/LeasesDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tempe Arizona [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TopMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TopMember",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Top [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TotalEquipmentFinancingReceivablesDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TotalEquipmentFinancingReceivablesDue",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total equipment financing receivables"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TotalEquipmentFinancingReceivablesDueGrossWriteOffs": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TotalEquipmentFinancingReceivablesDueGrossWriteOffs",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current period gross write offs equipment financing receivables"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TotalacquiredintangibleassetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TotalacquiredintangibleassetsMember",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total acquired intangible assets [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TradeAndOtherAccountsReceivablePolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TradeAndOtherAccountsReceivablePolicy",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Trade Receivables and Allowance for Credit Losses",
        "label": "Accounts Receivable [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for accounts receivable."
       }
      }
     },
     "auth_ref": [
      "r102",
      "r105",
      "r106",
      "r871",
      "r872",
      "r873"
     ]
    },
    "cxdo_TradeReceivablesNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TradeReceivablesNet",
     "crdr": "debit",
     "presentation": [
      "http://cxdo.com/role/TradeReceivablesAndAllowanceForCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Trade receivables, net",
        "label": "[Trade receivables, net]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TrademarkAndTradeNamesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TrademarkAndTradeNamesMember",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trademark and trade names [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TrademarkTradeNamesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TrademarkTradeNamesMember",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trademark and Trade Names [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TrademarksAndTradeNames": {
     "xbrltype": "durationItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TrademarksAndTradeNames",
     "presentation": [
      "http://cxdo.com/role/IntangibleAssetsAndGoodwillDetailsNarrative"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trademarks And Trade Names"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TransferredToReceivablesFromContractAssetsRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TransferredToReceivablesFromContractAssetsRecognized",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/RevenueDetails2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Transferred to receivables from contract assets recognized at the beginning of the period"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain",
     "presentation": [
      "http://cxdo.com/role/EarningsPerCommonShareDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms."
       }
      }
     },
     "auth_ref": [
      "r283",
      "r284",
      "r285",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r412",
      "r417",
      "r493",
      "r510",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r634",
      "r789",
      "r791",
      "r793",
      "r794",
      "r795",
      "r796",
      "r797",
      "r798",
      "r799",
      "r803",
      "r839",
      "r840",
      "r841",
      "r842",
      "r843",
      "r844",
      "r845",
      "r874",
      "r875",
      "r876",
      "r877",
      "r942",
      "r944",
      "r945",
      "r946",
      "r947",
      "r948"
     ]
    },
    "cxdo_TwoThousendTwentyFiveMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TwoThousendTwentyFiveMember",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2025 [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TwoThousendTwentyFourMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TwoThousendTwentyFourMember",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2024 [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TwoThousendTwentyOneMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TwoThousendTwentyOneMember",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2021 [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TwoThousendTwentyThreeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TwoThousendTwentyThreeMember",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2023 [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_TwoThousendTwentyTwoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "TwoThousendTwentyTwoMember",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "2022 [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "country_US": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2024",
     "localname": "US",
     "presentation": [
      "http://cxdo.com/role/SegmentReportingDetails1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "United State [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_UnitedStateMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "UnitedStateMember",
     "presentation": [
      "http://cxdo.com/role/EquipmentFinancingReceivablesAndAllowanceForCreditLossesDetails4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "UNITED STATES [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_UseOfEstimates": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "UseOfEstimates",
     "presentation": [
      "http://cxdo.com/role/SignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Use of Estimates",
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles."
       }
      }
     },
     "auth_ref": [
      "r25",
      "r26",
      "r27",
      "r111",
      "r112",
      "r114",
      "r115"
     ]
    },
    "us-gaap_VehiclesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VehiclesMember",
     "presentation": [
      "http://cxdo.com/role/PropertyAndEquipmentDetails",
      "http://cxdo.com/role/SignificantAccountingPoliciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vehicles [Member]",
        "documentation": "Equipment used primarily for road transportation."
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_VestingOfRestrictedStockUnitsAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "VestingOfRestrictedStockUnitsAmount",
     "crdr": "credit",
     "presentation": [
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vesting of restricted stock units, amount"
       }
      }
     },
     "auth_ref": []
    },
    "cxdo_VestingOfRestrictedStockUnitsShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://cxdo.com/20250331",
     "localname": "VestingOfRestrictedStockUnitsShares",
     "presentation": [
      "http://cxdo.com/role/ConsolidatedStatementsOfStockholdersEquityUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vesting of restricted stock units, shares"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://cxdo.com/role/EarningsPerCommonShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Diluted",
        "label": "[Weighted Average Number of Shares Outstanding, Diluted]",
        "terseLabel": "Diluted weighted-average outstanding shares of common stock (C)",
        "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."
       }
      }
     },
     "auth_ref": [
      "r226",
      "r231"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted-average common shares outstanding:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "presentation": [
      "http://cxdo.com/role/CondensedConsolidatedStatementsOfOperationsUnaudited",
      "http://cxdo.com/role/EarningsPerCommonShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Basic",
        "label": "[Weighted Average Number of Shares Outstanding, Basic]",
        "terseLabel": "Weighted-average basic shares outstanding (B)",
        "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."
       }
      }
     },
     "auth_ref": [
      "r225",
      "r231"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract",
     "presentation": [
      "http://cxdo.com/role/EarningsPerCommonShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted-average share reconciliation:"
       }
      }
     },
     "auth_ref": []
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "15",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "SubTopic": "10",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479455/805-10-15-4"
  },
  "r1": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "15",
   "Paragraph": "6",
   "SubTopic": "50",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480123/805-50-15-6"
  },
  "r2": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "SubTopic": "230",
   "Topic": "830",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1"
  },
  "r3": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r4": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r5": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14"
  },
  "r6": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r7": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r8": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r9": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "470",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-1"
  },
  "r10": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(3)",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r11": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "SubTopic": "10",
   "Topic": "505",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2"
  },
  "r12": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2A"
  },
  "r13": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "15",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482739/220-10-55-15"
  },
  "r14": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22))",
   "SubTopic": "10",
   "Topic": "210",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r15": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14"
  },
  "r16": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14A"
  },
  "r17": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-5"
  },
  "r18": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-4"
  },
  "r19": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-1"
  },
  "r20": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2"
  },
  "r21": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r22": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-16"
  },
  "r23": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r24": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-20"
  },
  "r25": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-4"
  },
  "r26": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-8"
  },
  "r27": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-9"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r29": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31"
  },
  "r30": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "310",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/310/tableOfContent"
  },
  "r31": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r32": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r33": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "460",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r34": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-12"
  },
  "r35": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-13"
  },
  "r36": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2"
  },
  "r37": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-3"
  },
  "r38": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "10",
   "Section": "55",
   "Paragraph": "37",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-37"
  },
  "r39": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "20",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1"
  },
  "r40": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-20"
  },
  "r41": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "825",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-11"
  },
  "r42": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r43": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r44": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r46": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r49": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r50": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r51": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r52": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r53": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(29))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r55": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r56": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r57": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r58": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(31))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r59": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(32))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r60": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11"
  },
  "r61": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r62": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r63": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r64": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r66": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r67": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r68": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r69": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r70": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13"
  },
  "r71": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r72": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24"
  },
  "r73": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25"
  },
  "r74": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r75": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "235",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/235/tableOfContent"
  },
  "r76": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r77": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "42",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-42"
  },
  "r78": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 4.E)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480418/310-10-S99-2"
  },
  "r79": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/360/tableOfContent"
  },
  "r80": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r81": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/440/tableOfContent"
  },
  "r82": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "470",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/470/tableOfContent"
  },
  "r83": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1"
  },
  "r84": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SAB Topic 4.F)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-5"
  },
  "r85": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479515/805-10-05-4"
  },
  "r86": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479515/805-10-05-4"
  },
  "r87": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479515/805-10-05-4"
  },
  "r88": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "805",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479515/805-10-05-4"
  },
  "r89": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r90": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(15)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r91": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r92": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r93": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r94": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r95": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r96": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r97": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r98": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r99": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r100": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r101": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-11B"
  },
  "r102": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-11B"
  },
  "r103": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11B",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-11B"
  },
  "r104": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11B",
   "Subparagraph": "(c)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-11B"
  },
  "r105": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-15"
  },
  "r106": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-6"
  },
  "r107": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-7"
  },
  "r108": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-7A"
  },
  "r109": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "SubTopic": "20",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482659/740-20-45-2"
  },
  "r110": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "270",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482989/270-10-45-6"
  },
  "r111": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1"
  },
  "r112": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1"
  },
  "r113": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-1"
  },
  "r114": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-11"
  },
  "r115": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-12"
  },
  "r116": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-6"
  },
  "r117": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-7"
  },
  "r118": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h))",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r119": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/606/tableOfContent"
  },
  "r120": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "a",
   "Subparagraph": "(Instruction 5)",
   "Publisher": "SEC"
  },
  "r121": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(1)(Instruction 5)",
   "Publisher": "SEC"
  },
  "r122": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(2)(Instruction 5)",
   "Publisher": "SEC"
  },
  "r123": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(3)(Instruction 5)",
   "Publisher": "SEC"
  },
  "r124": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(4)(Instruction 5)",
   "Publisher": "SEC"
  },
  "r125": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(5)(Instruction 5)",
   "Publisher": "SEC"
  },
  "r126": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(1)(i)(Instruction 5)",
   "Publisher": "SEC"
  },
  "r127": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(1)(ii)(Instruction 5)",
   "Publisher": "SEC"
  },
  "r128": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(i)(Instruction 5)",
   "Publisher": "SEC"
  },
  "r129": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(ii)(Instruction 5)",
   "Publisher": "SEC"
  },
  "r130": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(iii)(Instruction 5)",
   "Publisher": "SEC"
  },
  "r131": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Subparagraph": "(Instruction 5)",
   "Publisher": "SEC"
  },
  "r132": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1405",
   "Paragraph": "a",
   "Subparagraph": "(3)",
   "Publisher": "SEC"
  },
  "r133": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1406",
   "Paragraph": "a",
   "Subparagraph": "(1)",
   "Publisher": "SEC"
  },
  "r134": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1406",
   "Paragraph": "a",
   "Subparagraph": "(2)",
   "Publisher": "SEC"
  },
  "r135": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1406",
   "Paragraph": "a",
   "Subparagraph": "(3)",
   "Publisher": "SEC"
  },
  "r136": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1406",
   "Paragraph": "a",
   "Subparagraph": "(4)",
   "Publisher": "SEC"
  },
  "r137": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1406",
   "Paragraph": "a",
   "Subparagraph": "(5)",
   "Publisher": "SEC"
  },
  "r138": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1406",
   "Paragraph": "c",
   "Publisher": "SEC"
  },
  "r139": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12",
   "Paragraph": "Column C",
   "Footnote": "5",
   "Publisher": "SEC"
  },
  "r140": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12A",
   "Paragraph": "Column C",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r141": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12B",
   "Paragraph": "Column C",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r142": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "14",
   "Paragraph": "Column F",
   "Footnote": "7",
   "Publisher": "SEC"
  },
  "r143": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column A",
   "Publisher": "SEC"
  },
  "r144": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column B",
   "Publisher": "SEC"
  },
  "r145": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column C",
   "Publisher": "SEC"
  },
  "r146": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column D",
   "Publisher": "SEC"
  },
  "r147": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column E",
   "Publisher": "SEC"
  },
  "r148": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "17",
   "Paragraph": "Column F",
   "Publisher": "SEC"
  },
  "r149": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r150": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column B",
   "Publisher": "SEC"
  },
  "r151": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column C",
   "Publisher": "SEC"
  },
  "r152": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column D",
   "Publisher": "SEC"
  },
  "r153": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column E",
   "Publisher": "SEC"
  },
  "r154": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column F",
   "Publisher": "SEC"
  },
  "r155": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column G",
   "Publisher": "SEC"
  },
  "r156": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column H",
   "Publisher": "SEC"
  },
  "r157": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column I",
   "Publisher": "SEC"
  },
  "r158": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "29",
   "Paragraph": "Column A",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r159": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 11",
   "Section": "L",
   "Publisher": "SEC"
  },
  "r160": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 11",
   "Section": "M",
   "Paragraph": "Question 2",
   "Publisher": "SEC"
  },
  "r161": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r162": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r163": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-1"
  },
  "r164": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-7"
  },
  "r165": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r166": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-5"
  },
  "r167": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483489/210-10-50-1"
  },
  "r168": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r169": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r170": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r171": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r172": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r173": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r174": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(3)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r175": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(3)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r176": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r177": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r178": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r179": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r180": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r181": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r182": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r183": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r184": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r185": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r186": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B"
  },
  "r187": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B"
  },
  "r188": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-1"
  },
  "r189": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4"
  },
  "r190": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5"
  },
  "r191": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6"
  },
  "r192": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r193": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r194": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r195": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r196": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-17"
  },
  "r197": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24"
  },
  "r198": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25"
  },
  "r199": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2"
  },
  "r200": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2A"
  },
  "r201": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-8"
  },
  "r202": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-1"
  },
  "r203": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r204": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r205": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r206": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-04(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3"
  },
  "r207": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23"
  },
  "r208": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24"
  },
  "r209": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5"
  },
  "r210": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r211": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r212": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11"
  },
  "r213": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11"
  },
  "r214": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-12"
  },
  "r215": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-3"
  },
  "r216": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-4"
  },
  "r217": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r218": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r219": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r220": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r221": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-8"
  },
  "r222": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-9"
  },
  "r223": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480530/250-10-S99-5"
  },
  "r224": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/260/tableOfContent"
  },
  "r225": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-10"
  },
  "r226": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-16"
  },
  "r227": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-2"
  },
  "r228": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B"
  },
  "r229": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "60B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B"
  },
  "r230": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-7"
  },
  "r231": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r232": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r233": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-2"
  },
  "r234": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-3"
  },
  "r235": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-15"
  },
  "r236": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r237": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483014/272-10-45-1"
  },
  "r238": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/280/tableOfContent"
  },
  "r239": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-15"
  },
  "r240": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21"
  },
  "r241": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21"
  },
  "r242": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r243": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r244": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r245": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r246": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r247": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r248": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r249": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r250": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r251": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Subparagraph": "(j)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r252": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "25",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25"
  },
  "r253": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "25",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25"
  },
  "r254": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26"
  },
  "r255": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26A"
  },
  "r256": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26B"
  },
  "r257": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26C"
  },
  "r258": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29"
  },
  "r259": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29"
  },
  "r260": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29"
  },
  "r261": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29"
  },
  "r262": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29"
  },
  "r263": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29"
  },
  "r264": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29"
  },
  "r265": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r266": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r267": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r268": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r269": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31"
  },
  "r270": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r271": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r272": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r273": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "34",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-34"
  },
  "r274": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "36",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-36"
  },
  "r275": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "40",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-40"
  },
  "r276": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r277": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r278": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r279": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "42",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-42"
  },
  "r280": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13"
  },
  "r281": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2"
  },
  "r282": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-4"
  },
  "r283": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r284": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r285": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(aa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r286": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(aaa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r287": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r288": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r289": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2"
  },
  "r290": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r291": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r292": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r293": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r294": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3"
  },
  "r295": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r296": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r297": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(aaa)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r298": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r299": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r300": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r301": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r302": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r303": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r304": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5"
  },
  "r305": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A"
  },
  "r306": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A"
  },
  "r307": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A"
  },
  "r308": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r309": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r310": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r311": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r312": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B"
  },
  "r313": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r314": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r315": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r316": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r317": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5"
  },
  "r318": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479344/326-20-45-1"
  },
  "r319": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-11"
  },
  "r320": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13"
  },
  "r321": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13"
  },
  "r322": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13"
  },
  "r323": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13"
  },
  "r324": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13"
  },
  "r325": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-14"
  },
  "r326": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "16",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-16"
  },
  "r327": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-5"
  },
  "r328": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-6"
  },
  "r329": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-4"
  },
  "r330": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-7"
  },
  "r331": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-9"
  },
  "r332": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/330/tableOfContent"
  },
  "r333": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483080/330-10-50-1"
  },
  "r334": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483080/330-10-50-4"
  },
  "r335": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482955/340-10-05-5"
  },
  "r336": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483032/340-10-45-1"
  },
  "r337": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483081/340-30-45-1"
  },
  "r338": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483054/340-30-50-1"
  },
  "r339": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479483/340-40-50-3"
  },
  "r340": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480265/350-10-S45-1"
  },
  "r341": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/350-20/tableOfContent"
  },
  "r342": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482598/350-20-45-1"
  },
  "r343": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r344": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r345": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r346": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r347": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r348": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r349": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r350": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r351": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r352": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-2"
  },
  "r353": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/350-30/tableOfContent"
  },
  "r354": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1"
  },
  "r355": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r356": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r357": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r358": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r359": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r360": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r361": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r362": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r363": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r364": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3"
  },
  "r365": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3"
  },
  "r366": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-5"
  },
  "r367": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1"
  },
  "r368": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3"
  },
  "r369": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3"
  },
  "r370": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r371": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r372": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r373": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r374": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r375": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r376": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1"
  },
  "r377": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1"
  },
  "r378": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1"
  },
  "r379": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.P.4.d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2"
  },
  "r380": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4"
  },
  "r381": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4"
  },
  "r382": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4"
  },
  "r383": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r384": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r385": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r386": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r387": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r388": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r389": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r390": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r391": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r392": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r393": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r394": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r395": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r396": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r397": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1B",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B"
  },
  "r398": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r399": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r400": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r401": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r402": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C"
  },
  "r403": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C"
  },
  "r404": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1C",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C"
  },
  "r405": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1D",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D"
  },
  "r406": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r407": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r408": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r409": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r410": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r411": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r412": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r413": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r414": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4"
  },
  "r415": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-6"
  },
  "r416": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r417": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r418": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1"
  },
  "r419": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-1"
  },
  "r420": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-2"
  },
  "r421": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-3"
  },
  "r422": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10"
  },
  "r423": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r424": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r425": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r426": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r427": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12"
  },
  "r428": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13"
  },
  "r429": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-15"
  },
  "r430": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-4"
  },
  "r431": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5"
  },
  "r432": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8"
  },
  "r433": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-9"
  },
  "r434": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(n)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1"
  },
  "r435": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/718/tableOfContent"
  },
  "r436": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-2"
  },
  "r437": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r438": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r439": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r440": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r441": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r442": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r443": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(v)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r444": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.C.Q3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r445": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.D.1.Q5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r446": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.D.2.Q6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r447": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.D.3.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r448": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "720",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483384/720-30-45-1"
  },
  "r449": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "730",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483044/730-10-05-1"
  },
  "r450": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "730",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482916/730-10-50-1"
  },
  "r451": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/740/tableOfContent"
  },
  "r452": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-25"
  },
  "r453": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-28"
  },
  "r454": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-10"
  },
  "r455": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12"
  },
  "r456": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12A",
   "Subparagraph": "(a)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12A"
  },
  "r457": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12B"
  },
  "r458": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12C"
  },
  "r459": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-14"
  },
  "r460": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15"
  },
  "r461": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-17"
  },
  "r462": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-19"
  },
  "r463": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-20"
  },
  "r464": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-21"
  },
  "r465": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-22"
  },
  "r466": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-23"
  },
  "r467": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9"
  },
  "r468": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8"
  },
  "r469": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(d)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8"
  },
  "r470": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.5.Q1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1"
  },
  "r471": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1"
  },
  "r472": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 11.C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-2"
  },
  "r473": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "270",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477891/740-270-50-1"
  },
  "r474": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482603/740-30-50-2"
  },
  "r475": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r476": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r477": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r479": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r480": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-5"
  },
  "r481": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r482": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r483": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25"
  },
  "r484": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25"
  },
  "r485": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3"
  },
  "r486": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "810",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3"
  },
  "r487": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r488": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r489": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r490": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r491": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(h)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r492": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r493": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480237/815-40-50-5"
  },
  "r494": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r495": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r496": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r497": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r498": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r499": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r500": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r501": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r502": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r503": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E"
  },
  "r504": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r505": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r506": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r507": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r508": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r509": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r510": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6B"
  },
  "r511": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-10"
  },
  "r512": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28"
  },
  "r513": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/830/tableOfContent"
  },
  "r514": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481839/830-10-45-17"
  },
  "r515": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482014/830-20-35-1"
  },
  "r516": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481956/830-20-45-1"
  },
  "r517": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481926/830-20-50-1"
  },
  "r518": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "230",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1"
  },
  "r519": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-17"
  },
  "r520": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r521": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r522": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r523": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r524": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "20",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20"
  },
  "r525": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-1"
  },
  "r526": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2"
  },
  "r527": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-5"
  },
  "r528": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8"
  },
  "r529": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8"
  },
  "r530": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/842-20/tableOfContent"
  },
  "r531": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "12A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479165/842-20-35-12A"
  },
  "r532": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1"
  },
  "r533": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1"
  },
  "r534": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-5"
  },
  "r535": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-1"
  },
  "r536": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r537": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r538": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r539": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6"
  },
  "r540": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A"
  },
  "r541": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479773/842-30-50-10"
  },
  "r542": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r543": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r544": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r545": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r546": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r547": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r548": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r549": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r550": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r551": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(bb)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r552": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r553": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r554": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3"
  },
  "r555": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r556": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r557": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r558": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4"
  },
  "r559": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481444/860-30-45-1"
  },
  "r560": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7"
  },
  "r561": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r562": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r563": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r564": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(4)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3"
  },
  "r565": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r566": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r567": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r568": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r569": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r570": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r571": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r572": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r573": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r574": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r575": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4"
  },
  "r576": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478345/912-310-45-11"
  },
  "r577": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "330",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478411/912-330-50-1"
  },
  "r578": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "924",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 11.L)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479941/924-10-S99-1"
  },
  "r579": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483154/926-20-50-5"
  },
  "r580": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "928",
   "SubTopic": "340",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478859/928-340-50-1"
  },
  "r581": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478934/932-220-50-1"
  },
  "r582": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r583": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r584": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r585": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-19"
  },
  "r586": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r587": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r588": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r589": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r590": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r591": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r592": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r593": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r594": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r595": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r596": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r597": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r598": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r599": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r600": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r601": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r602": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r603": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r604": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-6"
  },
  "r605": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-7"
  },
  "r606": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8"
  },
  "r607": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8"
  },
  "r608": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8"
  },
  "r609": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "280",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478657/932-280-50-1"
  },
  "r610": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478988/932-323-50-1"
  },
  "r611": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "940",
   "SubTopic": "820",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478119/940-820-50-1"
  },
  "r612": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r613": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r614": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r615": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r616": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(27))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r617": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-05(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1"
  },
  "r618": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1"
  },
  "r619": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478451/942-360-50-1"
  },
  "r620": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r621": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r622": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r623": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r624": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r625": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r626": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r627": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r628": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r629": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r630": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r631": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r632": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r633": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r634": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r635": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r636": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r637": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r638": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r639": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r640": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r641": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r642": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r643": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r644": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r645": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r646": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r647": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r648": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column J))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r649": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column K))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1"
  },
  "r650": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r651": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r652": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r653": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r654": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r655": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r656": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "340",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479510/944-340-25-1"
  },
  "r657": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4E"
  },
  "r658": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r659": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-9"
  },
  "r660": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r661": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r662": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r663": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r664": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r665": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r666": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r667": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r668": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r669": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r670": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "825",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477351/944-825-50-1B"
  },
  "r671": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480424/946-10-50-3"
  },
  "r672": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r673": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(h)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r674": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-11"
  },
  "r675": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-13"
  },
  "r676": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4"
  },
  "r677": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-4"
  },
  "r678": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r679": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-2"
  },
  "r680": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r681": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r682": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r683": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r684": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r685": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r686": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r687": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r688": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(16)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r689": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r690": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r691": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r692": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r693": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r694": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r695": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r696": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(5)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r697": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(5)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r698": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r699": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r700": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r701": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r702": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r703": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r704": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r705": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r706": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r707": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2"
  },
  "r708": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2"
  },
  "r709": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-3"
  },
  "r710": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-7"
  },
  "r711": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r712": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r713": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(g)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r714": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r715": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r716": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r717": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r718": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r719": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r720": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r721": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r722": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r723": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r724": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r725": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r726": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r727": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r728": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r729": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r730": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r731": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r732": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477802/946-310-45-1"
  },
  "r733": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r734": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r735": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r736": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r737": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Column A)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1"
  },
  "r738": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479196/954-310-45-1"
  },
  "r739": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "440",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478522/954-440-50-1"
  },
  "r740": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "450",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477850/954-450-50-1"
  },
  "r741": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r742": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r743": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r744": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r745": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r746": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r747": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r748": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r749": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r750": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2"
  },
  "r751": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(a)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H"
  },
  "r752": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(b)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H"
  },
  "r753": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r754": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r755": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r756": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "8",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-8"
  },
  "r757": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4"
  },
  "r758": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "52",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-52"
  },
  "r759": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r760": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31"
  },
  "r761": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r762": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r763": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r764": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r765": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r766": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "48",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-48"
  },
  "r767": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "49",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-49"
  },
  "r768": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r769": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r770": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r771": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r772": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479294/326-20-55-12"
  },
  "r773": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "79",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479294/326-20-55-79"
  },
  "r774": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "80",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479294/326-20-55-80"
  },
  "r775": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479081/326-30-55-8"
  },
  "r776": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482955/340-10-05-5"
  },
  "r777": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482548/350-20-55-24"
  },
  "r778": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "40",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482640/350-30-55-40"
  },
  "r779": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481639/420-10-35-4"
  },
  "r780": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69B"
  },
  "r781": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69C"
  },
  "r782": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69E"
  },
  "r783": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69F"
  },
  "r784": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r785": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "91",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91"
  },
  "r786": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-11"
  },
  "r787": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-6"
  },
  "r788": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "231",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-231"
  },
  "r789": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "100",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100"
  },
  "r790": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "100",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100"
  },
  "r791": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "101",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-101"
  },
  "r792": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "102",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-102"
  },
  "r793": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "103",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-103"
  },
  "r794": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r795": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r796": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r797": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r798": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r799": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r800": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482949/835-30-55-8"
  },
  "r801": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "53",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479589/842-20-55-53"
  },
  "r802": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481372/852-10-55-10"
  },
  "r803": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481395/860-30-55-4"
  },
  "r804": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-17"
  },
  "r805": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-21"
  },
  "r806": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-29"
  },
  "r807": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-3"
  },
  "r808": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-2"
  },
  "r809": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-4"
  },
  "r810": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-5"
  },
  "r811": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-6"
  },
  "r812": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479401/944-30-55-2"
  },
  "r813": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-29F"
  },
  "r814": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r815": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r816": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r817": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9E"
  },
  "r818": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-18"
  },
  "r819": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r820": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r821": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477439/946-210-55-1"
  },
  "r822": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477802/946-310-45-1"
  },
  "r823": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r824": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r825": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r826": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r827": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-10"
  },
  "r828": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-12"
  },
  "r829": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r830": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r831": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r832": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r833": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r834": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(b)(1)",
   "SubTopic": "10",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13"
  },
  "r835": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "SubTopic": "10",
   "Topic": "250",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-3"
  },
  "r836": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "250",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r837": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "250",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7"
  },
  "r838": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "SubTopic": "10",
   "Topic": "250",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-8"
  },
  "r839": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r840": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(1)",
   "Publisher": "SEC"
  },
  "r841": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(2)",
   "Publisher": "SEC"
  },
  "r842": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(3)",
   "Publisher": "SEC"
  },
  "r843": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(i)",
   "Publisher": "SEC"
  },
  "r844": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(ii)",
   "Publisher": "SEC"
  },
  "r845": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(iii)",
   "Publisher": "SEC"
  },
  "r846": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 5",
   "Section": "Y",
   "Paragraph": "Question 2",
   "Publisher": "SEC"
  },
  "r847": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r848": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r849": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(3)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r850": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r851": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4"
  },
  "r852": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5"
  },
  "r853": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6"
  },
  "r854": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-17"
  },
  "r855": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r856": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2"
  },
  "r857": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r858": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23"
  },
  "r859": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "24",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24"
  },
  "r860": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5"
  },
  "r861": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-12"
  },
  "r862": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r863": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r864": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r865": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r866": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r867": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r868": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r869": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "34",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-34"
  },
  "r870": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2"
  },
  "r871": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-2"
  },
  "r872": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-2"
  },
  "r873": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481569/310-20-50-1"
  },
  "r874": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-9"
  },
  "r875": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "321",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3"
  },
  "r876": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "321",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3"
  },
  "r877": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "321",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3"
  },
  "r878": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "323",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3"
  },
  "r879": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r880": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r881": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/326-20/tableOfContent"
  },
  "r882": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13"
  },
  "r883": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/326-30/tableOfContent"
  },
  "r884": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483032/340-10-45-1"
  },
  "r885": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/350-20/tableOfContent"
  },
  "r886": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r887": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r888": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/350-30/tableOfContent"
  },
  "r889": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1"
  },
  "r890": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r891": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r892": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r893": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r894": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r895": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r896": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r897": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r898": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r899": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r900": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r901": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/405-30/tableOfContent"
  },
  "r902": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1"
  },
  "r903": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/450/tableOfContent"
  },
  "r904": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9"
  },
  "r905": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.Y.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1"
  },
  "r906": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r907": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r908": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r909": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1A",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A"
  },
  "r910": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10"
  },
  "r911": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5"
  },
  "r912": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r913": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r914": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r915": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r916": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r917": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r918": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r919": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r920": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r921": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r922": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r923": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r924": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r925": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r926": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r927": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r928": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r929": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r930": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r931": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r932": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r933": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r934": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r935": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r936": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r937": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(v)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r938": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12"
  },
  "r939": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-3"
  },
  "r940": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r941": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r942": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "54B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B"
  },
  "r943": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r944": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r945": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r946": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r947": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E"
  },
  "r948": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r949": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "28",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28"
  },
  "r950": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2"
  },
  "r951": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-4"
  },
  "r952": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6"
  },
  "r953": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r954": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r955": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-3"
  },
  "r956": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7"
  },
  "r957": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "852",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7"
  },
  "r958": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "912",
   "SubTopic": "730",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479532/912-730-25-1"
  },
  "r959": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479838/944-20-50-3"
  },
  "r960": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r961": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r962": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r963": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r964": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r965": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479432/944-30-50-2B"
  },
  "r966": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3"
  },
  "r967": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B"
  },
  "r968": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B"
  },
  "r969": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4C"
  },
  "r970": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4D"
  },
  "r971": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4G",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4G"
  },
  "r972": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r973": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r974": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r975": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r976": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r977": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r978": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r979": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r980": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r981": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r982": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r983": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r984": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r985": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r986": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r987": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r988": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r989": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r990": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r991": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r992": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r993": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2"
  },
  "r994": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2"
  },
  "r995": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4"
  },
  "r996": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r997": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(k)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-3"
  },
  "r998": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r999": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r1000": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r1001": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>102
<FILENAME>0001654954-25-005149-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001654954-25-005149-xbrl.zip
M4$L#!!0    ( !2*IEH6#9!3 Q@  ! S 0 1    8WAD;RTR,#(U,#,S,2YX
M<V3M75MOY+:2?E]@_X/6+R<!UFZW+Y/,(',.?!D'@_78AMV39)\.:(G=38R:
M[)"4[3Z_?DGJTI)(B92Z<\3!*@B2-EE%5M57O!4O^N4?;ZLX>(&4(8(_'DR/
MC@\"B$,2(;SX>)"P0\!"A X"Q@&.0$PP_'BP@>S@'W__S__XY;\.#_^X?+P-
MKDF8K"#FP16%@,,H>$5\&<BL+X!Q2 \/,^K?TGH^!"='IT?'/Q?IEX )+H(5
MC\B<%CG7HKR S(-0EJQ8C\\GXM^3XY/S@NB)S/DKH#  -%PB#D.>4! '$61H
M@0,A>) J]"&X^%L87"\!78$UA2N I5+!Q0L_*LJZ(NL-18LE#WX(?PQD-<'G
MP[M/L^ R80A#QH(G$B=2%/;?P6<<'@47<1P\2@X6/$(&Z0N,LN)8N!25!,+"
MF'UXBS\>+#E??YA,7E]?C]Z>:7Q$Z$)H<GPZ^>,6X6\'&26%\T;2=Q.1FQ.&
M":4"K$U!K2@9#(\6Y&62YTI;G>4L M$% .M#P'G!-0?L696?94Y$)D7/"1<X
M9VP,A>9*1$:E?/@6+LV4,J="BO +9-Q,G.8)\NGIX?'T\'2:,V&XD![6:)_W
M$TIB.,G("BZ 0F:N26753<0W:\B,]E$Y%7+&U[3!-B*G3%H1^O4T%WDZ^>/+
M[9-RE8/"5X0[F,BG[]^_GZC<G%2CK#J6S'X6K:LH6>2B%GJ$94L/*_11#:2,
M^'R29E9(D9'T74J*"L<E">:TR6_3S"HFG+9 +G(+-"AO0J_(JI0<<5ICJ)0O
MLB<R6_(<2U<\F9:KDL[64)7*JE8%D5ECD5$AQ,G*(HV@@!2%!0/!#CP$'];X
MA)Q&X4U=1G-W46G_8=30_,.H0AB^1:2@E'\<A62ENO7C4]G<BS[HAM#5-9R#
M)!:R)OC/!,1HCF3;AC&4HTZ%H)3- 5U ?@=6D*U!"%LJ$WUU$/P","9<#3+J
M;YFR7B,\)]F?(D&VI@\2V)DP:"!_?'W\K!>LNJ K(D;5@P )>Z0_BV+R@B(X
M1QBI"H_E/]/@<#N4'@:*ZY=)G;1>2B*&SGO\=_5;#&I,,"LEY(B2<6<D;9PA
MB,,D[L&XE:R9+TO-#=?7GCB"6!0L?C 2HTAV\)<@EKW5TQ)"SG)C6^G:D)A.
M14,_%N9_$F:$!119F4&YT" K-4B+':%RA^I!S-8P7T*.A#:NN%69K"!.^X 8
M_%"IY<<1U%90"_NR^_G]&E*E /N*01(A-?]J1-;&V0KOR=G4M8UNZY'+B&U-
MP0]%72/([B!?D970?REHT L4RQ^R@K>$=4;<6DPK_&<_G_6#OU)MD-;[@ZSX
MQ]$=&MS!"-\3)^&W)8DCL9[_]&>"^$9W@,Z,%LC?F2!O KI<S]^"M*81XGXM
M'K#E34Q>N[=QG;$5XI_D'+A7JQ85!:JF$6(3Q$]H@<6:* 287X1J=8WPXD$8
M,T0PFS2WD[3!=O(^@^T:L3 F+*%08K@M+]@6&.0ECMCDV#S"%X@3F**0_V&U
M][1N[XQSM&MNUT^ 8N%Q[ %2,>BO"'Y:BGE]:N:&/*O53^I6SPL*1$E!6E2@
MRAIQR'&841#!1QA"] *>8\@N<'01BZY:+KEN"+VB4/36<@:6]T1=&*R(G=81
M4Z4'I>+5[D!103 G-$BK"-(Z1B2+%B4F46L5;T-8V$KX?1=8>W-;,3[36F5>
M55#4-2+>!_$'"M< 19_>UG(*E@%93[3B<U[')RLAR(L8#;XU.%E#RC>B/11.
MG%O=D&,U_3O=]&DQJ@T4!8T Y !\%GKA!1+=Q(7H"KCLF'XE)'I%<1:D;"-H
M@^/T)],L>5M:D!:G<,D+'&')81$K")K 6D=43VPS_]FQR?Q9"6-'I!G\CG#(
M'L!&#IBIM2LIK:9^9S*U8@\R_M'.N9U%\?!^GDX_4CM74JQVUM:!DEV%1%0!
MHZ%S0]\ 1'\#<0*_0"!-I6)'J<7-66VF_WEZ;G!Q64Z@"@K*)8T8; =7&6Z?
M@;>\!R\G6.VMN7K*'2CVT<A%CR)<+[=O]KO5M&<G!E=.&4>C;F/DJQ7BJCF+
M"=\54<%,B+?ATS8"J_DUSRZ5IB:$E?)&5(JP-EQ(&SW"-:'2/EDDNYYJM;\6
MULN*"(HR1IL[;25TV%)PVEI0Z&@A/,O60O!#_FO< 7*#;:;"8@Z@9816R+2(
MG!6RM.01L/JV4!F::I(5!"WLEO&/QG;<*RK;OI7""H46AFO<-QK!V64#J8Q8
M=S8KC#_MO)DTPKNW7:5*Z]RM#"OP/^]YAVET ]M64QE=<Y85M/>V;:<1!:?]
MIRH4C?DV/*9:D,&\%S6BTF53J@R.G<R*D2'&UK9!-6)EVZDJXV/.LF*B12?J
MNU8C"JW;5V4(#.E6^VOQA\I6UFA\MZV6,@IM!%8XM-A"P[;+"$S#UD 9B4J*
MU?1:1"%E'RW=%)FN1M:J:59K:T&#O(#1WMW"F]>0 Q2[Q#=S2BLV6B3 &N#,
MBAXQZX39U!VTJ1TU;1GOBEHP'7'KA-L=H/*6Y0MTQV_+8L516]D[XUA4,N)9
MWVFH])*U-!LB)]K:OMAK&/N]=GM/30:W]V4G31> QC[+;O,3D\U/[#;75N*:
MS4]&FS?8_-1D\U.[S;75MV;ST]'F#38_,]G\S&YS;8FMV?QLM'F#S<]--C^W
MV[QYMSZW^?EH\P:;UV:;39E6#+05MX;!.']T/3Q1F4ZVDUAQT5;;+<<GQOEF
M)WRF#@ YS$;U#7(K0N/\M-\9ETK#ZL%GQ5);7?<XY3*VPMT1GO:%V-Y>3[7U
M>G^,QW:\$\JUN<LN!5A1UV(&.Z ^SH3V=Y2M.E?:L1"K%^B/F.QZF&WL[??L
M"=.]N(+#.*!%5_;E"^.HL#]O.-F+-]CCFZ?[?DAEC(O^!=YPNA=OL$=>3[6(
MU-Z\88S8[LT;SO;B#?:8\*E^A65?WC#&DO?F#;7%Q-Y*LWJ''J';EW>,ZPSK
M78G*\J$ASXJ@%L'3;TN,TWR7ZQ(U-)H)K) 8+K"8+TR,P'0 IM9'.E':H#IS
MOMLR=FN]KKE4&I4#G16PSA==QC;6':ZI*U[V2,69%K5R!&P,1'2"[,05,GLX
MX4P++KE"-D8+ND!6&]"Z,%@AU")"KA".XYOU:F!E3&O(LP*D!6GTRX'CR.4&
MQ+0-"8<12HN0-$(QCDE6,&J=FHW("HX6H&@&9^RZVN_35OHM4X85#"W64+M1
M._98#O:?-@+@T%=IH04S F-'U8Y!K9=JI;!A<M[^9/+8/[D^HVS&II7"BHWE
MF>41G,[O 51&D58**SA::*#Q18!Q8&EYDKEI.=E,8$7&$ '8/MD\-AK[6PV5
M5E)-LAI?6[OGKS6,K:#5V%.#M>U3JO/&QS'&N93%X"<&@]O#B^?:>KMN\#&,
MV&#P^M3(G&<%0%M3UP$8^_5.+\F;T>G"8(5,6WFWOC0_(MGE]?GJ,S,-F5:$
M]+<MZF_1CP.X,Q;35C#L@_H[_;.VC6C\_QC?Y7^>12__".?!FTKA@NCC 4.K
MM?Q25)JVI'#^\4!"="BO-A^?GD[_*=0]>EO%.8DLOP#S]?7UZ.V9QD>$+B;R
MR?\4U;J%LHKS(@ -M5)>3U49T_?OWT\4E2A$G<00W=DD%_X@F.Q-K1@\=U5+
ML,#85WV$;W75I^:./FHE'+^K5M6VLG^E?IF ]1KA.5%_B[\P)JFKIPE")]'#
M!!BL(%N#L$U>A!F7YR@/ A8NX0K<DE 5U,(B_SK,^0YETN'TY/!T>O3&HES&
M+B)L]>LF0L[7681R6>?JKX@[5YXSR%K/.]3'8'BT("\3]<(4W4SD6QGF2ED;
M2_Z'],^S/M4GE(H96K?ZRSS%7WTEB"#J4GE.+G]TJ+("6\3I1#;W"2;X$"<K
M2%'H!GB9\RYEE,"_E^XV?;>3*/W$Z"E#Q:3P+5QV@:"@5[_Z@B!%GF2=WV0.
M0GX(W]8QP( 3NKD1?[N9(J:T4LJG;2&[(:/D4\5BN  <1N[RE+GV)T0'@^0<
MN_D%!BAD71QCRY#^[-LE,!1VJ38GES\Z5#D'[%E9C%%^*"WFI&N9*VL$,6?;
M,OH*()OSK@*H,G;N%.4;?(?'T\.3:;,D-D[U-^L#/5_33MCG].I7'^,GK ?X
M@FD!P+ID_[R8GB)TA]\H0E</T)RIO_/UT[M082>U94K?S@:&4:?!+R.7/_0J
M8:SV!U6H0"X;_MEZ;^I R6:Y7"6(4!S+GQ\/.$WDVD3(@SX\@UA.N#\>1/!9
M?O W316+!$2BF5K+I'-RD94N;5*"%1'C J";SQRN))E0.WEF'/%$*OTK)<DZ
M)T6"I%FS6X(7,TA73AJZ$GNI:?EN6YL"N;(=Z-OU#;-O.0^IL(SB4C&O2H_H
MFE34*/Q7RL4=3:HZ\OEI@"=(7U (LX?H<O6TU+["1PE5_>9?)3V9\U= X1.)
M%2NKZ]&<[ZE&#Y1$2<AK>FBIGDI_11B_GYM]JB&O9^?^[U'$XEY6*I^5,WM:
M0YZ?BJAC/@\ 1?=XMH1WD#]!SE,B 0LGX;?[M4+D D>/D'&*0K'X5AE?,=H.
M7'LHQ],&^9N05@Q$]W.3V.J]Q,((;J1&/>T*,<7_UZISL9)13R=U"E)/86MZ
M.,$XTZKF^]E2/V-A2\#@-4S__QD[K1"ZLWD*J*Y(/D&6'6Z+OG4R3_5S[4%E
M!\J2SAWOELU3_:\ 6WYE,+I.J'!)H<O_0D O1%%4Q:RSL=5"5-,-9#F=^UHN
MB]]9I=[?O(5O_#(6T#D%,AP+ZCSL8()QLOK \S+V,#&OOGM2'-K0]'6B'%ZA
MV]*%!4V'ILSAQ;Z&+*1(]0KW\\N$"4$94Q_BV6A:.-(.KU3?)M*@]_Z*&]XT
MU4!2=UOLP.^/\FKTMRC80../$K<(/*,8R>,J%E5:*8=7*%L6BS9%%ND)GB<@
M&E81W&A2KP??\,J:PC:-\+F0>J-20]BF73EG)E_4K(9R6I6SD?J@4G9Z7/1V
MF*$(IO6U="=.U,,K)L=GS./-1436'$:ECQA2@L7/,+UAV-BQ].0>7O&G< FC
M)(;*^]2+9@^Q_(ICZ;4TL62:)_$MFJ=?U-:TWZT(GTQ0?UK'7?,.G,,K?+44
MLD*V#6[\COCR*F&<K"!5\@OL\CG QJSZCF4,;X0"NQM>^R2#!6L[O4?*S9MF
MV]SBT,Y\7BF[R"+.KEBZ</BDX)4ZULL?5.VB!,9^IX+W?CZW:MJ%U2>5:]$<
M^Q#43NZ3:OFK:E> THWPPW17Q*:A(Y=/BJI[H_*(AA@39#C.14TG'I^4E-%E
M&4H7'68*B1@<PSB)8/09EUZIR#0K+;&M+7=O!0]OKLH,D96GB)]$<2MY-CN?
M.KULMZ$Z<_7=)=U/Y/Y&WBN"4I:H-B_4Q)T7&_]=F7JJF*?N8<=EC3B(T;]@
M5(Z ;?=:FK*]/$V8K;F%J'(EEYKH$;%O8KB4"6 !#ZI!I';*[@U-M+)U6L+N
MF]?I\I-M)S4.:G5E&E3#:\B^<;+.PW:E[89:LJ>[E:*!0RKFTJFQY>U<?<=@
MNR7M1.NIIC.1$I+5*L$H/<#-ZJ"U4GBJU0V$3#VLP%AV*NF>+R'- LNBR[M_
M@72&5MO.O0.#ISK?8R@%;- D5]1*Y:EV>5SY5C@>+AWT,:3[JH%@RS=;OP D
M>@W9.4!A^J=D+:]<%"HY$/IYB"F+CQ<=A!!9.MJV%5WPBP<B-/J,RXVO.]MW
MI?Z, LSF4*SNM6ZG$X>?2NM[=LV[>=^)$L+C9DO ?P>E=5Q]YW5SF<IL5K9C
M"9[V6,5ANP3.B%SDYE.<3V]2J2*T46ZI]1/@.Y;AI[N4VN>,E$*3-Y2LJL<I
MMEH5TZE^O-^#BUQ$D6KF(/XJ=)6O\PC9\]"0?H33B<5/![B&:\(0S_%B*6 J
M:+M=Z[21>+G&+K84YH2F'A6K+04RMUQGL]/[>;>K4(#5-E'N;1H[,'BNLD4!
M,3-Y0:PTFO=A]+33,ASZ:P2VV(,IA0%[,?O9D;5I4U-&#D=B,KI1"T4G<]@*
M\-0]7#V]:\OX[OJ$"Y9%%._G:MSJIKZ5VQJAK&F]UQ!LXX=72P>BTZU8FYYF
MEF$W.*Z1/'WW C_-YS#,;XI<BDE7=/$*:+2=I-CIAKW/-JL=Y;B#O#21-F3Y
M/;%2E^&!BK>E>X'F,:8#O9_#2KY9L=V1N)_K&QCUK0TK]9 ]QBUDS';KT$+C
MI6\Z#^#%KD;GH;_,Z><(F+]0\1F_0%8\]=SR(DL;H9<PJR&X]=K+'7SC_!7&
M+U!4RI>%RKTXOU,;R/N&_)6XJ[YE^)XU7E((.^J<L7S'6M^0A'93.N/XGG56
MC]IWTCGE^$YUOIASL> 4:LP[*5YG\U+[5@VNMQ%X!SHO]=-/_J8[!4+D[42Y
MG>8[T:M=(Y]UF1$.8E='="7^?C6MGMKNI+?&ZN=$.3N]7=SRJYT5:L[V$M1,
MW#O (O#G+5+OX=QLIT+-V3YK [.3]6()]I5!J@KX B$O'5ESHO33 ?/#]9=0
M=)182%K;AV_)]Q*T7-Y\(Y35%2EG^!GLR27]A*-F/.J97H)QD>Y @S266[\R
M> U?8$S6,)K!<(E)3!:;8M3NP>@GF.V:Y/<''V'ZM1&V1&OF9H0F5C_-H$.&
MRL>8S9E#G_A7$?$5H-]D3$K]<2<?<:X$S(W90PO>[CD6M?HR^^EX%V$HQ(F*
MD'CZ[>E2I-R<Z^=@G1UO_%U^NP[SC9(>Q-/:Z4=#MI_J7,4DB:[(:IW(*=*%
ME'J1/AQ07*IIH_!4*57O57E7L)KDI]A5WQ'];^8]Z09L_9E L\<Y<'EZ1*'\
MG7LUH,+H 5"^N8H!8VB.8)3=)LX5[\+@)^ 7"PI5DMQ^V49+JHE##V3"O^25
M"D(WTN EKZNF>CGY;8M0%)^'W[[5YQ)>-+-YJ7TJ/4P_H-NBK@.=G^WG&F:'
MCL&;FAE)N973%WNVV^FM Z7W2LKS9O)ZJ]J6KCQ\;"/RTC_%V"163T+D2XCA
M'/'BF&7Y7'4SA9^3W?NU>G$*+U1S^AVBQ5*^SO0B4A=BF%H!A//,<J_?G6WH
M<:'<:SBKV95I:"4+6.0UCQO15:@[#56PF(:AA=ASQZU(7QD;VA6MD_JI9C&D
MV]5T(_53S7($(7N79GMMZU?1FU(0RW=1HY5H<XRGWV'/'[ QA2'Z%.*G:8K+
M[6+%8,2]C6#H)PBVQW)C*9(P-J*;:\!+,YU6FF'/\*K5J$P"\26AE+S*J75)
M^);\00V?>T3FV_?XBSP4%F\>!55V*:KT!$X)@KI+]2E@6,BV?;U\:E@^@R-5
M"(U:.M(.J] EP8E)>$.Z!X*J,^M-TAHRAQ4YVQPOKD54UBA-F9[&HTIVS:)+
M,W)'<"C%2B6N*723<+%8KJ_+=BMD6#C[/BE?_P;&'LKQZS,9^=M@Y5?!ZDI;
M:/Q2J/SIA[HB#7E>*)"_^2QW)R#-S^C4-\R^P-6S? BF]*2T&T/OQ^LB(A>S
MNVFEY@SR%CF#=7DUA1QH!]7%M%.NH])"-*CTEX0+P31YJ\F#2C@CNCE+:8/*
M9CQ:H$G;2C6L;?/M]NU6NV[K9II!95?WDJ_D9(*:C&[.'E3BIKF )KN-<% M
MY <'Y;<'Q8Q/$]R0-ZQ_OY+9DB0,XFCV*I(W(D%W\!8BOZ2_Q[K)VXC\DE[>
M3;&+7Z;R3'Z24 ?Y2U2#RO\@:M'EK:3Z9=^9O*3FT#K+9$/WYW"! .9WD+\2
M^HWEGV2[",6JB*ESP*:^W9EI4.WNR(L20SY!F6$ VKI11_IAYPSX!C[3!-!-
M*M>3?+E,E];HB#UXAVU?<+6&%Q3]BYA&#4/FH-+*KQH3_!NB"X01T.0U9P\J
M\1/ UP@NR!6(T9Q0D]3-),.V@A=(8^&Q#V)2_S\ ,V"8/3>2#"KY%Q0NT0+@
M6\!^@PN#W$T$PZ]4:GOEYO5* ]&PTH><""FTGLXX'7(A'C9:(X_\-KZ1_007
MDE8/WW3A\F-%7SD_W[RH-Y(-'._A( 9R,B17OD7T$IC#G4[4PXX3M4\L-OF8
MA6[85I-]&^<1R@>M890] FLX4*DWG<ZL@VJ:?QSD?EY(:!!5]\..?#Y$WR4+
MB)OB[=5</_OLCIVU/^U)^^RJ:Z?@E19IDTYW>LWB-U(,ZT^5IPT-.VBF;"\D
M+AVD:13;0#/P.K3I@R2&5:F-=.#='O4]G&MHEMZ<[5<_8^]@O)#[7CARG$T(
M]#6&(7-@OPB5&+,EHBK^[K96ZL8V\"XQ3IC\6IQAH[B6,["<@$;W\VNQ&! +
M4:J[>Q.!7ZTT^Z""O;'6"/^=6OPR8>%2+"'__G]02P,$%     @ %(JF6E=#
MIVA'$P  "@,! !4   !C>&1O+3(P,C4P,S,Q7V-A;"YX;6S=75EOXT82?E]@
M_P/7^Y 98&5;A^=")H'/P(#'-FQ/-F\!AVQ)O4.1#DGYR*_?;I*2*/95/$K-
M9+%)9NRNXE?U]5%=74W^^//+(G">2)S0*/R\-]P_W'-(Z$4^#6>?]Y;)P$T\
M2O><)'5#WPVBD'S>>R7)WL\__?,?/_YK,/CMY.[*.8N\Y8*$J7,:$S<EOO-,
MT[G#?_7%35(2#P9%ZU_SYWQR1OOC_<,/ZY^?N F3BL),AOURN/[-&=/G1%/'
MXYHST<.C _;_T>'H:-WH/IJFSVY,'#?VYC0E7KJ,W<#Q24)GH<. .[E!GYSC
M'SSG;.[&"_<Q)@LWY$8YQT_I_EK7:?3X&M/9/'7>>&\=_ACG<G!]_N"<+!,:
MDB1Q[J-@R:$D_W$N0V_?.0X"YXY+),X=24C\1/Q"74##[Y_XO[XQ^QSFZ##Y
M])+0SWOS-'W\='#P_/R\_SS>C^(9L^=P>/#;EZM[;\YP#6C('>Z1O944UR*3
M&W[\^/$@^^VJJ=#RY5L<K)XQ/EC!8<T3^BG)'G<5>9ES 6*.L@7_VV#5;,!_
M-!B.!N/A_DOB[S%O.$[NCS@*R!V9.OR_7^\NU\_T7OQHWXL6!_P7!Z<1ZY,,
M8R8RC\GT\QYO,."$'(YSK?_>:I2^/K*^F=#%8\",.VCPQ- G(>N'[ ])%%"?
M]^03-^ TW,\)21,S'*@&?*RW;#B$Z9RDU'.#]L"EZE"LN$_9O_EDDMQ,;QY)
MG'7,Y&OH+GTVLOU&I@!UHMMS&BW8M#-G;>@387-'M"!74=*A<= '=&"I]/GW
M:>1]GT>!S^;Y\S^6-'VM8UM3E?B\N<G\(HB>NV1*J;*M-?=LS:-3-D[#]-CS
MHF68LI7OEF'P*#%.82#AM@COR!,)E\2$I=*L[5//W3ADQB2W)&;#9!&%]RP.
M,(+02[7%]!"[/FOF$?KD?@M(<ASZ+)J(GOG$>Q'%+)QB78./8#-S#52U]B@;
MCH^\/U]0%DAYS$W=F-)6;UN[;F/RZ%+__.61#V$C7$7S]B@BME2EK\S@M4/,
M4-0R;?%<ABPBG5'&P3%S=LJ)^"6*_&<:&.,+@&A;=&RVBI<$S)FB>5L4UU%*
M6*STRGNJ"8*L;=OG7[$="EM;LC%A>KZL;=OG7[@T_M4-EN0+<9-EG"]V)B!:
MH?:]E@=!#^Z+N4](FK;F@UED?O!VJ_;1S&)!T\R);)RQ^(,OX6Q+#UC] :*M
MHQ,RX_KOR&,4<^W&@$31'C5*ZB1:ZCIJTC[L(5L;6^'=5M%1C ?#)6V,$^_!
M $%D=QC[P4 W5F@K#@1RT8GVCF-"&'2M$$9\"(5EDD2,%6$0P0HZCAMAZ+1"
M7<:0,#AJ"91X#@8*(-I-= 6#(VO;42P#77REK5&C@C.2NC1H%Q94=.P"[[ +
MP,-=(KYV8YY4?C)N^AHIZR@6 _8&>>MN,1@95C3O%L6H'HH1#HIQ/11C'!23
M>B@F."B.ZJ$XPD$!'LT&,9P=#' 8@X11$1H'.4QZA_LLH&N;:]R]+4826JC<
MO37@D=F!:EN[8NCX[D:]92O-<T1'^BW;:0PUNM)OV4YC,-.5?LMV&L.EKO1;
MMA,\X7;]G([S=<!)52^%D;$# S.*(J(#]X(Z.A!SC$"GPC7@8S4NA#54X*,U
M+F<U5."C!7??!JHZSC\#>ZY>"@>3L8<:Q'!0@;D%BG>9O0>2J1%!0&.D42>#
M@ =,($2VR_J9NO@@LBCG,<!N!I'ML-JF_MQK%.WFO CH+FGC3A$81Z*\=:<8
MC NYO'6G&. C3"N%6#=5%V@#55W754&/_O1B2*C,!WP&.34NSPV\99!=\& 3
M\O>M]N0E):&_J;3G$"'7CU*:\H:'^?^&SF!SX:WT1W[-[)PQG;XZE^$TBA<9
M""1TX(M&.?3A\'!T>,C0KJ\@L#^OM3AE-4ZAQRD49>A7^(/(V\(<\(MC4>6>
M%H><,,S9];"IFWS+[H@MD\',=1_YQ;W) 0G29/43SOPD8[WXP>]Y\'VZC.-2
M^7+@?B-!]L3?BW:59@<6D/);'/P?OME]<@,^X.](DL;48Y[DOV##?_L'I99J
MRUJJW?9$J<\=QYX3Q3Z)/^^MIW(W]K9ZFGBQKVAQD"P7>9\>4-:'5O+3.%KH
M:"E(B+HTL$PL0[?G/!-^_Y+U<SO=H#C*3S8IKVN2FONO5@I"XM@JB1"K^\/1
M9?C$<$7Q*P.IYF2[%82#B54.9%9UYG-Q7>8_^5V;ZI6XE@L99""./K+C: #Z
MOG7U4_>1IFY _\P"A#1VO?0T2E)MQ]?)0-AY9WD],5G<'W:VSQB,JX2B.823
M]U8YT=K9'SK6>8?-D-8M#Y+&$"H^6%XEE#;VAXB;=$YB8.@O:PNAX:-5&M06
M]H>%')YITP7S]O 0V=VJP+3?+EZM4/^EZ?QTF:1L:.:]@BU7UU'HF3H_5!Y$
MT= .1?5\@!W17D7A[('$BR:1+5 61 ;VIEP6V]:RO3^#:%5I<!OP4OI2N8$V
MRM5+@3C"WG,KHRFSO?UAIWC)3CC+4O;9R[%NIE^3_%A=LZSKQ4#\8._'56L[
MQ.+^$%2M=&"]Z/S%"Y;\+6G55S/(PF"(-(@N[%V],B*&V]\?ULS,U/0^]JY=
MX?W^>EB=2 !%9B!I$#/8>_?:B13$J*S+K2.$)D5S$"_8&WGSUK'/1%Q1]QL-
M:$J)>0\O:VOS\*8H+0(?VU3;@[H/7@)"[7K%L8W<WO[TI:)@KTZ7THB SD3Q
M\A5UV-%;W1^"\HTBR0+>%=Y7(T=Z*1!->#D+,$T0V_O#5+ETTDB0M#&(%[ST
M!9@7C:7]H6-[KP@?.B8Y$$EX^0LP23#[^\-75I0*'3[2QB!F\#(78&8TEO:'
M#EGN&#Z(8-(@PO!R%V#"ZOBB/PR6S /M#X!\X&4S)( K1/P5 C9M9VEZ\B15
M *(++\5AIJNF*_K#H33PA'!G% 1QAI?^,',&-+T_7*V.UF1O^I7,=]+6(%9V
MDE5037P:(_M#A2+D!&4+S:*@6MV=)!?J1=Q]'CSB=Q_4%,G:6BKMFQ+F3S\#
ME%VVTYU%2QJ#>A)>_D/M=+&X3V5I?[I0\5(I !=B2Q 1> D/,!$J&_O#PK'O
M4VZP&]RZU+\,BR,F3197)0#B!"^_ >;$8'%_J+GCU^I"XJ]>Q';L><L%]RGQ
MS\B4>E2S+$)D083AI3W A,']T!_N2ABSPT'%IY^N27HS?7!?M(<F]12!6,7+
MC<"'83,/]8?B4EQW'/IU B*S)(C$G214M*:ILRQUZ%*8MY,$1!WS- TU5OYX
M4#7RBOW=QJUC^5<"2U>0ATVN(#MOMO2^W=V5:NAW PL+1Y,A])+U1C/_N.E&
MM_-FK?VMC:O7Q1MM-6G938ONZJ_O2?Q$/5+YX%NET+K:R.XMYZJCRB75<G.P
MB]A7'\%=?Y[6X$YE<[LWC[6.-9B([>+;./*77JIW;+61W4O$.G?*S>E/_+/.
M6E4_TZ9)TFV:=D<[KX"\F8(F*7E3N]>;E6XL]P6=C=C#JGAVO?G+)&3WTG(=
MGUN>U'(4H*E-WM3N5>0:GN[[?'=/ J9NQG8,7]SX.RD9I4E]:V3L7DPV$@.P
MH&\,_4)"9E3 WV?L+VA(DS1_BY>1)J.@W=O+4*Z ]O>'L#N2$(:#OT_HC W[
M(,KNS!GI,HA9OOP,90MD?'^X6INUR<T! KYR8\LWGC4&",Q4HO+&22S$.\-P
M<]0=4K1K8*T&.HRV#3+. AH12W<V24R2-(>2I;35V*6-+5]P-E(@7M)4&=R?
M66L%LC %2,MV:\L7FYOR(C.Y1R,^P]5@V)OD+-]KKLL6S U]&E"KU>:"F9Z_
M/'?)8&^2Y"=D&L6D],+H\Q<6AS+/T]"-7R^9\[)+DKS$,\KV%JL.JQN7B ^U
M?!5[!PY5Q0.2R*%YI(.70]B]A_Y"X_&:I)" O-+,\F5J*6CI6]%P6>\-BVLC
MBGYVPG;R4UU]CU+ \CUG.+-*8[4QBM73]/*!LZ)<17GZ//DP:7;ZO/4@)W_2
M&_ZHM[9/H]L5-C6I9K)OUP6;<>@LS"\1>:\/L1LFKI>-K]#/_E:,-O]_RR0M
MW@#5PA-MGF?W"+Y649<D)D8CH#^SOL1$<V_1"OV](A"\7 ? \]604+JP-0Z7
M\=(%]4WKJOQRAVNS=$D6Z_,TJ_$[V6JL6H/+FG]P<MU;JZ^5FC?^X86+('I6
M!QWO^1=1&@4=3+63Z;8=9/"/%C PMW'T1)G?3EZ_,NB7X7H/>\SF_B?#7>4Z
M.OY>,RC>\EZ?EZXFU-UP<D;8=.A1MX@LCA?\4T=_9G]5,Z05LKOBM>8+X!#L
M6AC55XH5]3#JYG97Z.94Z*WJVQ"ZG[LQ.7&S%6S!=_J&T:-J;[<^K_7 T;NA
M/W2M3B(\9FW-LQB)B-T"O]:D&9W1HY,TAB_F%\?/2/[?RU#\]I,VDPB0MEM%
MV)K..B[J-;/*-_/7(5BCQ&Y1(@+/1H=U1[<B:A$Q-?F006TM=DL6V\4X#5W6
MZY&[^A:<=J=J$+-<V8@P/"5>L3 @RR_3A@_ BI3E\L:N1YS4)[T>8=N?-*LS
MR*J2EDL[$<:9W#>]IK-TL-\LCE4HL%UFB3&):CS5:XZS;=;&=,/7S:#RM@LV
MNV=8YZ?^$UQYISW/'@KO4:_-.DRI[6I0I*Y0QZ/]R3!)=^$<=6D",[Z(L982
MR[6=.'D+O<?Z3+?VO:YM,Q@E198+5G>4QA \UQ_J%1[@N[VDY:FM5(>5UTFZ
MK]EY^4-T[/VQI#%1?@10;6,='?9K=FM26GTI96U_]2BR45B_SD:UZ-!2';9?
M7GT;4X;ID;\C,6=-;99!S'Y!<DWB-.^U5GJE1SWUCFWT7XL*(=BKK=42EC_+
MU)H[DR]Z1!LSTB/$SRX[9.5F-X_9)8?S%Q)[--G4=DD_FVL2M?SAIM9$@KV#
M78)21-S4OPD?YKRP\IZD:9 5SA4%B#DRMIS=)4M5+KFV%LL?>&K.7R-K>S<X
MN?'\'QZA/+D!R<Z-DS2F7DI\_@L.?>L'I9:W)*:1+X;TQ?=LSU^\N1O.R)V;
MDO/IE'C:+YCN%H?E3U;9<;M8IUAW,]>X*ASQ(U-]]J5N#]'<EWA9O3[[4C<G
M]R8]D!MV,RT;>Q.V<JMZTD1YF.4O7O6B!R*RV(=K)O=T%M(I]7AR(D^W,^?<
M1@'URF,JOVDQ^EC<M#BCB1=$R3(F_-K%1H.S4>%L="#<&JF^/J^$;UC%5WE'
M8*<X5B_KO\VN%O&/8/ R6!FL41762M1ALDXN[!32"$ ?8M<GI6(B?I9B*K$N
MH1]7T6?ZG))"QPU]9ZW2F4;,J$RILUV.WJW[=?52-4V<" 2ME#MK[=8-WBYP
MD-IQ5+6CD'&J;Z7M&%B>Y90F.$OHWHGH<L',G4(>N%.,EV'*)G#*3Q*SHV6&
M]9<H\I]I4'U/_/B];*+;R#NY@@SS1@4"Y.(<3,'WY% &LY#!Y5N:9RI0O9.A
MR@2<2LZM4TA,EMQ,\S$H@R0L#%P@NP98B"!@NG!IG'T2Z0L+/MA3M].I.;@/
MPR.)O[BDDXDZV[(H V-]S"K#)C@N;^\4 AA4\E!-P#(92?RT:HIR-76QH-GE
M>CY5Y.]FF9%0$AAET 0WE>2SF:*B 0'Q/9GQQ]V11WYM+9S)8 J!2"'DE*0P
MH.GB3$6\F>$50@]#O.F\6?T)Y\*RUI"'[4KMDAE">&$T(]>%8T01$ZOA"E%$
M(8$+2QY.JU$*T80RJ,;%72.Z5AOSOG6,C4Q.PV!;;?&'CD-N7/LKL;?:K(^F
M"!P;IQB**\$.A055'I#C0M9$YFKDDK!$%Y_C6E )U-6HA>6W&J[CXBS'[6J0
MPIJ[%;WC(I2&S&JHPKJJ")QQ0>=1J!JEL)SF KB@BL!. TM8/U<BR,!T(=09
M_PYF((4KK)#&&*I09L^,H<P.8=V#VN$,[5ER[<;Y=Q9D%@E+'MBBM5K40%?=
MJ4;" KB.=%$[SS8P63<9J3+9Z-UA&]M(ADU8Q@1LHUU@&\NP":N7@&V\"VP3
M&39AN1*P37:![4B&3;WG6V$[V@4VW40S$E8L 2/RA"+?HFKF%V'1TNQ146<<
M+7+I!"3NSXS0L::D&CML#1?",M5@BXW*47TS9<2-A36MN9W](50W+XR%M;*%
MQ=@S2,,\BKI?C\7#Y;:)%-R9J)T'I%U>6/2[<@'6 &CI!%E4-N[Z#!L]FFOI
M!%GX-Q;"F,Z<@!0VMG2"+,X<BYGQKIR %)^V=()V<1!#L*Z<@;Q45%+.FA5
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
M_IE6O4P?V#U'$:\4*;>U#5H6"F"VW/RZ-A=]4"'T8 !3Q_WYW UGX"J\ %-
M9EF?-,B\@[1#9)7SBX(I_ $R!&\;S#N@N+W*TW,&6EY@B?0Z#]".ESZJ :.?
MM^2 2'[ASGA^.Q5"&^RC*HN."O*YARS:U!MJ;X>6/&PQ24NQZH7@M^,_S?L-
MOX[(8:/8T;J@V:Y>R,[]^8+<GVLISI*("!Q%17D?Q6>9V616.4$ELACV@^9@
M9!ZU6K-1>#J5^E;=&%4Y#'LWNRA_1/[+W@8PY[,\#U#B3T! =MV+11)"+[MZ
ME*,37\)2(AW!AHK5N2JG2R5!^CDU.>HO<N'O49 H*UY&9('*92)H*9V1U5&F
M*Y2*EKFM+5 O%[N6NA<7(/H9HV7^Q"0O/[S1:@1Z5#IJ-8#W\HJ+:H> *,[.
M<\"_"9NU?3F*52.U1=MJTO1R>O-NR#%6 &&/%A'8HFZ1##H<UY< 1&GU_8CN
MK&@YA33 D;](^R>Q]R/ $[+SXNB\!;TM)F@A4B]W-R]J'0+*G(."%[^6$-FB
M>YD<.ES*Q=[GFHRR\J,QG%W>IIDM2FTBU^$<OD\>(@_#] 7,+P1[#.CJ0.OC
MW2=+NOWAZ55.9XVBY:*8?0'T%J,I2,>4&] QQC_:-UO:8 0N^%Y/@?96>^Y$
MOR0"%>'2/V \+Q*,KD(O2'QZGX"^T!"E436^93HQL\AXG>33\=0HZ45^XL7K
M#1BM]$DZTV8?<!J?WB*BC:M0L$%JS<4&4W42K%^)FG9&2J]192%JR0:V#0/+
M3<.4J;#*H*?G? SG?2$NA2K84?E*0UNTS,)>:'-]$#81V&75E3ODO>]:J1^G
MX46+*K1#%K3&FR\-:(>[L/,N[/P2PLZ[&BB#UT Q5?)N5P/%4 T44S<2=C50
MS-9 T51*CUO7/SM[*E7Q9S4UOXT=H"X"6S0M9X;B4]?0?8 !494D94O0_D6I
MGB%?XY0Q_)F-G-\G<S?^PXTRAPN5HXYH=>8&G$OSS?-1.X;F+=CE#-A.1CUA
M:P_3%P,N$C!!-!&F"-M^>B[<9HOBGG+AIHER(;CA[#XL;3%D/RFUA+\WWIH)
M*KWP6W:,9C/*!A(O,-Z)E2VFZR:=CF!ZI1.=^GZJ+C?X%KH+^F \^2YU<Z3=
M2&6PR3C88J!60M5#ZB8<:$<L+U7CU=^&E^IH"PZT8Q:TQC._#6C'6X!VPH+6
M>-RW >UDY]O;^?9>@F^/1O_5DDCJ#:WRT370FTX4V>"1YBLTFX["E\;I.7S%
MCR5-I(?J1^35ZJA^&YYLW:6Y*::YV91I-999:[ T-U/O1.S2W+2_&M'Z;K^X
M"*Z4; 1G8MZBJ';-O^;C/1K4/9BGSEP N:K932U1+QM\H=)!W72-S+EVJ8(C
M4FSK',&Z7KOYTOI?:DZP-W<C</,0P%DZF"X2<!7>T\(U_O\!EV6+XJ*PG'0$
MAE&^]BR7QFP!.0[ R1SB;H8J4=IOIY(P9FO(<?!=H@3'\TYV*I/:;ZBR-+W"
M"-HL!:==#;6A? %VV@ACMBX=$]_I- :XJZ7JQ+8;JRY/KSP_#?9J8Q[+K=',
M#C01@A,]XW#X5AI4*CW7H"'N]<G%(0QGT2VMM;Q8H/!^3O;%@K)J[^J "PX.
M8>%D/)R42:G0VK:!,],&&L_1RY'O'J+?1?1>1D0O+W#A!E=A1%!0=-*;^6P"
MJSSF7"D,1_J*BSXTGRUSEY&)Z&;*@!M-"(R(_2>9MW?8KXS"4R_IQS7S#ZL
MP_$5^_K,B (,YOJ-';%5Y/V\R8H]\'R^ZVFWT=3\&4''T&AL QIR&WZ+Y#2,
MH0^I _L1W ,OP>G%^NR2+_"S*Z.+91*G1Z&;:6G#G&YRLTO ?$,/Q-Y\YU#>
MZ0TDL9D'!=-W)TM7ALE(6->OOT3X' ,?QO0-EO7S@JPS4N-5P92M4^+KN*'O
MK#D[4T2.3BEO)V.N]]377DK64?"H41N\NYB:<LW;"RIR,QPU4N9["*S9(=$H
MR=>W4Q\UDO+7WW#6'QE/%^^I &9_;USX'DH#FGI_3QVP2C,<-6Z6#Z:#74F'
MG9/H13B)-D.)RI-(;E:R6UOE'F*+8-@W5 <E.['SVH_"7R/J4A)CC,3M,HPY
M1N0*Z6T2<T\*\-9]X44U&9'Y$ZJXBU7>9I+(HN4E@?5'R1[(2S\:I!]%TVI.
MJDS_4G+SEE!\(4M9(L.7U#!ZA'1.(+TE>TZWU&4$]P#$9#9824T2LW?3&&<;
MWO#^ \,8W$RG\GA=2VX6V;*;@&8OM;7 3!/Z'P%>#6+A#;.7:>"-?&9R['OZ
M)UA)^4>-]/+!_!-'.__$SC_Q$OP3K-%V"S!$_JT;Q?3NI<J5%AFY51X,19G,
MUQL4HU2H,ZC&8!1.CU;]M*U!1^(6V99)1^0XV8)9;;@LPA+E[9L)>O_APEU%
MN3BR:R2MF)C?Q+;L[0K&YPIK^%8)"RO9B;K!!'W&@*Q(>#)WPP]O>MI:D>5+
MM+RBZ%K>J3R=I1>CRJ>5]-8*^2[7?2<D,6\@19>=4 H=]2N;7VRE9-O56U'L
MH57'<U9ANJ-&HLY@Q_/CW?%\=SP?[?$\PG')-.1?&[.0?VQ,\AF@&7:7<^BY
M ><83MH+FMMQ[!;+H..8+3- U@W*6+@G+PJ>W]SLT5FLV*81^'+H.!AOR0AC
M..P.90@;CK*G3R[V+XBP8L=AK9D=,Q4;N^$R96LT,N]0H^$H''O,_L)3>&T^
M.K%,Y6.8B[JKO3S[O-WJ':5O]+D,/QV;PFM)C'8&3WOB);5YX&.@+Z:604_1
MDR<TF:,D(D>_R1-!MR*_$-?5$Q"8/TUS!F.EGIY @$+%P[[.4/_@32CNN2("
M.U5<$J!0\:"O*30^> D?6^JX3&&GDLL2%%KN5L5(6<LHP2VU7**P5,LE"0HM
M=ZL]Q'VF&"*Q5BLMK-!B!7&AM;=ZUS'2O.444"&Q0J]B$0I%OQM4T2AV Z$#
M^(+[/I0BK7G5*[XFI":.CN"'TJ<_8Q0)K[8J"U'G]*(L5!?.RIB*,#NY65-L
MJ-B*WESE6PR6+O0_/2_)05:8@MRH/9:3.@6MWISB6XR6 ,<K8J>U:@5H&U4
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
MND<TZ?2ZD?%NFU..Y!Q^[X'0Q1#=8O (41(%J^)R C?\3\CD5 9C+FP?1^.
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
MG:GU.S#*6G(JOU?1XLK,?IL@<NU.<@+3QL.2)?WY=CWZUK#/_"Y3^G2L<EJ
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
MC#5#$2M9:7W2)&(7P2>;';09[5943^AB\IJU(S?.80^K *X=#!QBPX@0JMN
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
M,,9Q$?)+Z#V%CS#Z#-/?T*,,'R)*0^B0*UIB@T_& NEP 1?6?8>*@J>X*'@
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
M#_K@"+2H*)B#MXQ^M$_.!2,8NF"PKA7'+?_WU;9M@RX4X_)*2%1O8ZUFFCP
M]CV\XR<=.BT';"^Q3;%75!/RX"1FH-N;]FNR[=]WBTQDW#[B2Q"T+PL\;$%L
MVII[*F$^&WTH^R=L[91LAQ==_<N"KF!7/W(9=H:J@3@(_-00;YE11'%1'9D=
M:'DE.^W;A_(1Y@7GC6RH./#=) Y,6^^X4A]^)N."TTS44=":7S'5Y7)/FJ=%
M09:DGF=(D%Z^E%FG2 :@(VL/@_+*B CB5@,(ADZR7++DP&DVX)!(K2$D4;8)
MD"*<Q(8LCV,(50:JV?+C/#V.B,GA\B!(/61*5HH1M E0:;;YD(LG>!)>S\,H
MC$U[E.D?PH?/@D- QCZ[/.$J+ZG:H6J,RB3).^#WDJ D=A9;AO@A*;/)AG-X
M*EDBIP>5?'U7,C;R=B@GL'UJ?Z26U"U9WS"10YTW>!=\YJ;%\PVC\KYH6Q&D
M0[STET$2>T%BVBU2<KR]FG#,?7=9T$-?Z 4>-,1>5'6D75@D8Q]\]!L:M$O^
M=O_^L*G(>6H[D[;[>OO+ZZ?6U^CC#URAO.:>:I3; AZRPV3)N^4XN'H31# Z
MWBZ9\U#.;@H$MH_Z"=\7S;@$VDO$J&L]_NA>>5W</=#GQUO<-.OC-Y%==\@R
M]@W7396C9I<MX3>R2;+R+DUM%F21'0:&>/E*,SPK<KUY)T99!L:^'Z=+(XV+
MY! 63_'YG5Q^)NS(C,GZ#S)>J.]N-C1PMEL&8SY*U 1.8).O+8P]57"3@N:-
MH>7JD>8W'$/+MB:(8RMQEW:Z406G.1+>"(6;BZS(6^B5>1#(43R[,=J9CX5.
M)^^)^C84N79BB#9[!GU;!V=T)+QA2DUR6('UPZ=U^9WMHA):UD@7%=+TJFW;
M( NR/5XEP[%>+6"%<9+U3&M?[4A).W13E<\Y&0;O7GXC3'PN]C'CKE"3/V\S
M@XO#XBFW!6+D8-^T!9O'$>N8.A;XI'0D>BX4-@PRRSQ+<'7.!C"-?0R9>+68
M]QF$*LL+E*_Q"<:[<K:)?HFO 9SX<6)(=)?QP^JBHM'[V/$!$S)0#G?Z<W)9
MJ)K\7^T_V4.%4PG@T,:.(9>HB_(V.%)D)#,IH;1,NG:RON4-!<=44K"* \=S
M8&J(9N(5V9.2B>97@%UDF].'5<$5NE<>I&YJ]</&OGF"Y81R4/LO[5VPBTZ*
MB+04 [;VJ@ OBC+_S[<(2,OE\%ZPM A]!$^%R?#_@+?_/1+3SGY#*KVE9!L@
M<>/ E)!5KS^01@A*;VZ@?H>O$*+*XYK("^?/?.<SF=H@C)%GBKG="'XD>>8
M/[R*+'_MH#%NJ7A^SYN']V1RD6E479$CD]+BP6P$V*Z5&92I]D)C18S_Z,7F
ME<<,X[+1!T&UX6WJGETJ[.+^,/19=Q#%5H"3!#$TY.0Z>3A,$8#Z\Y'!:\CG
MXIG@+:N<EU:)6PWX89*FAJ@N+[=.#"%6?W5Z]96A6]YH2D3YE>"D%HAC/\@,
M2;9TH9D_#%@]#9/!,_VFPD\P3X7W4E%-D'@^RLS)-7VA^<X ?926:?E#XB@5
MPK@;QF #P,]0U$_ \M8&"!_[48:HY8^35B5SN(?3T['2:6&H/G#], K?_%64
M"WW!::H82+N;]PU\H=.!/L$@5&U(5W.8Y.M6>Z,\<F0:!9'C6.C-WU;5Y:$Y
M(=:@<H;V]6CYW.%05&T--P*@@U-H2-B$BVJX!/A'9];2_Y@BIZ3I!CO'_E&Q
M(> %Z9] .RHG@]&IKO2/'WG+L3G,[D"6!!E\8_>A$?#5$V<9$L:3@94J?.J9
MK#4Y;0$G\D-H6@"ZN:PU98!K#MY$-L[.I1[]<Y-7F& @P[QYN5G#HB&'J[U6
MF$V[?!O BJ!KRCEU FF#@V"$&#0'@)*7P!QS'H26'YOBS3LW^2/$<!0@ZDUL
M&?MGHQFV#$Y;( D";%QHB;FV#!G@FJ-6;;N(O] 3UDV5D]X^T3 LV\6/S32W
M&O"L(,2&7#XF4#-(M1SRHUQD2U.'?<-/.S37V=>RD=!IL&H E$:.*3D!YAX'
M0M#J.<J,&0)$2 CCM,T^K1@61%@56%D:FI*@<.Y!(8_^*"G9Z\<%H5$LZLW4
M,""[5H"% RLPQ)IF-D*G"*+C5EY?:<S,EY??'*= X+IDM7RC!X418N@&CK*B
M4O<EXF.6840FQ<<?Z $6]_@;&<;7!85/_T>ORL]PC5LSUBZJ!/W%232=LY+L
M\76!CP';PHEGR#O_^&O()273^1;J"A8_!<0V6%=?H8S6&YHI]%A<6Q&R!]_K
M]@-DOA6'ABCDQX]+34+KAJQR<!3=R^F%%LYI"X$3HS!;O')_'AET(VNA09&-
M'%^1F]G0$&6!KO'5R: ;7\K:9"/".FV>GK:W)+CNI/>YR,KJ<<NB.!B.7 /
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
M/"?P#0G])D.)R+!(%J\IIFAG$2*5/8M46P)NA*%OR %L!L(54>NS$VN--':
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
MX(1)8!EB/\V4Z> Q@0E%KXGT!_Q4UGG3G5SJK<T9FY'A\L#VK; ?*74)O @
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
MQ/Y@38L^/VK8.FIF#7)U77S"2;6!U<OVL[<TSEV_,U3YRJ5)N1V0.+$%#;D
MR5,V'F='WZS^\*]G08>0[9KBG\JY[0Q-,E6(VIXU65O?/1E-[<$(5X^LW>VX
M#(C2:"#<_ +(&H9QB>A^-Z2?>5V7U0L=( RIGA8",0RQ;8@GFI)8&3CT^B%1
MK=/GHFZJ#87QN6@P$63SC:["FRHO[K?><7Q=H+@^"%-HV88\5TB3-@ZBWDA_
MG9?4I[+ZAFF?4=-VDLT@JP9(/!3XAE@JJG(F!#4I+,C,LVX[@'*TZ_3^X4MV
MUK'J ^P&V)07YFFS3@A1;SB2;E&X@3EGK3PN!?S4R4S)NJO*S2"0\W@BK_<J
M1WM]G6V#U,B\RMGGKW*T@569K;9-S/0LQSCR''>6\]1&RPX5!4&(W5B33\EQ
MASY!1*./O'R">?4/N-Z07UP]TC!RUYNF;F";HXOSP*W8$G"A%\6Z#]-"4@9G
MRVBL>AV(AKK]*_R1/VX>>UV6.RN.;1'X29SXNGU@YB-?";->AZ6A[G_\\917
MVPP.9-L8"OO'P7Y6&4 8>-J?$^>CE@5/[R5OJ*?J5SV55D!JA<C7'<A]/EZ%
M./7>^H:Z_ U3+2K-E%E65?F=_.4]?"*_:X92E7"@L]L!@84S[>_*\Y$L@52?
M*]3^Q/ KAO38VEYOV;[POG-^R*4-K-H65L=-Z/6*WZ,Z=%4BE@2O%DC<;"!2
ME=%F:)&7I$DO_H6>NZ"4; >G% /4PHW1/!A!Q[1[^JF$^6STH6@W1KM9PX+F
M3^ ;R1R7 EF:.M T!;($#8,@]E-"K_A%%C*GY4#J^HEER"HU*%8N 6<@IE'
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
M[]NN&6&TVDF8ST8?RF5\LA0H^89;/>X-K)J7NXJ:DZ V!_2[E^/?\"V+Y=L
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
MR^')S'EK$'8ZN.J:&EKP5!E,8:%4_:'@+7S*ZX@RKQ-/@V*1Q0_-C\J(..P
M15.(8?@[X<!___)T&_[H6LJ ^@_ .WN4>:Q\??'C-A#S^'+X'!Q;5X>UW+[Q
MG58ZJHL?XW&;HL&G@#Y\=&)3E3(L-EL*.RIWE _P/B";XGCJ2'%&%L8X@S,K
M=T3<V06\DN14V4D0^[*_D(\,"1]:?)T#2D%B>8,_817X.'L2OH.3\%_#[N-@
M<V!S1'1<-!2-3)W#HDRQ:\^V811^$@M#HTWF.4D)TSZX^C?FLB:%2Y!*R;)7
MXGF5]U;LH^/49,O=1C)2%P@[UET7D( 7ZJ+X15UO3!D$)F!OP2>6'S[W77JJ
MO-(!2 *7,M% S&E-H6 E3!5VIP-1F:UR0URBX G?+%M$(\:&F'BVX^&<X)DG
MSZ!\!X\;)\@$(*4]?BD4_W.OWE<^X(]GGUKMUJ'_E#O268A_@B'^3?,,7T2X
M@I IP#@K#/*QW<3-]#D@"?GC=T%^G\ .X""@N&R0K415 >R(9(W1#%0<&&5I
M?U5@4^NI'SACX!(8Q0X$$I!Y/&&\ +""UX%0Q#UZ5IYMZ]4=!1\?@K2G;&X:
M'>)=CGC5&<(7#9!6X].B&;*/FY^"Q^8>\#^O!0\LG%_P(H2N_^R"J09/ZB9C
M2>">0;T5Z*RXHCI4/O#]!ZOI8^')$%4Y5N(O:95VQL#.VP^NOJ8#9O%IS'G)
M$XS+FM0)M8]_VNCPBQS;+1&L4R%2"14J\2=98/*1?0U4>+;LZ?QA**]=8_11
M_8>21Z*GC9.#J_LT]5! PE]I'%CJ/#[<6*!075]9H^FX6(U^W/IL>XNFMO69
M%<0!;(%?/'#IP?G/D=QZVCA=4@V0_^!KT_)^-X?:"O)NTRW%K<^K((X(EO<+
M6]TU7UPNSCC+D/9=@2!VLDAAA4?FTZ [7.+V8!0UU5O3AVE1"1:+ 'V*V@*\
M;<_A+A.,R8M74I*SP>O"L8PI#OZJP] P+%N>A3+\17>8?C:)J>K$0(,9<Z'P
M82PWUXBM.0HF/^G:3#C"C]XIS?8'\C'=_1'7G5Z+D/G]:F<$;E- :^4#4)!Y
MMSSU,HKG+/0@/QXJ_Z:.O_2"M!M.:1T6/E_(P@LC*:>?1"P!6(?V_5%8% !D
MXLT!%,MS&8\@LUBS_!H>G*BL]PM,VP+$$!;3Z$QLW5#:#5ZLQ8)H/G7O6& +
M'H^3=Z9)Q7P,..HNP[LI/$032Q:2P1(TR]6HJH.-<Z#X/S@_'W3O[PX4;#'
M!O1[,B3(?W%PU;JH-6#2)\=A9D,PW:O-1C?>V<<@I2]!WKX'LVII=?!E(Y5B
MJD$<H-9H,AC9T7;E\$B3:(?-C.U(!I-T0IYI?6!3\J-.ABZU+Q5BO)(IMN_(
M;.#.S5ILE9_EW-HG"W$)\)L_HJ8[$X-,+T'2LZ-KQDS]AVO0([#]OV^Z(C-7
M=/"]J+0,7,S/!^U24F>(,K)12OUMTCRX>NP\]94NB]@VFS!&][YS?]WM?%5
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
M7B-,)A(QRBU+(CG?Y3K:C)5$%INM=[&:S40HBY3 %0>XN4Y&-P7<DPSW0XD
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
M[92(_86O^"D0<U=R?B.V.E+:8M_(.0/X-JQ&L[R!087ER;DI%L24,X?L_LU
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
M8L=M1/ #F7/YWOG"E(;I"T'S&!-MF/N*K^ R#LU]6M>L5^;ZAFZWQ@V,@%'
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
MXB!F8TLK7938B6WLN!-$8[T0GKRD!9>-[,T^C?LJO4:=P&30S(+'^XFR#J%
M9^_I2J4H7O8WON<1?B?\@JR8^B= 1?K(2C Y77:FG=%PIQQN<J?N!'4FPDW\
M1$\\D7H:JT&8>H+&,"3'E2'KO'"KH)Z4WKK&:I473CP;YCE)\O(2I5^BAGZ$
M'U%Z&&7*$^[E[M3@QD9J)18*AQ7I.50\,2BEPZD_!;5N0]X?T:ZZ<DV$4AP.
M^4(< 'ET(,^JUM,+B2S#G7%D8QS-?&'+^>;UQF24J)C68+<70VWR#M(>B\/@
MCL5&Q'D1S*<(_)73Q@.0H^M$['4B995^*\F=:;H#;BZ>>)O8]H-\?<X PC<9
MR6,F-WSJ0XH_(7B06@U3OF57Y041+]F5H)RNSH=QD*/460<1=>L@HOP@(K'/
MI>R G<%D>+E;%E.Y ^*$\2(VCZLWS[(Z6^ Q%M-VG%ME:B,/:67"I U*=4<B
M)QJ>,3*"<Q2J(A#D[P!9L6,)8FG-9-:3-^-IF,&^.0TKH_&"?X;C+9L6%?JR
M-?P;=@M^67817BORK<,P37$;QB/A@T[2OBUKN@L/&BK,9/_BC,/!S=-4T(4]
M&Y,(SWQB(B*#-^C\Q]-2@P)I4KD;%["3&%'V_?B(H^\AVJ.IP?EVPG*N_)I
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
M<P#T(A=RO:V"'\3R5%B*LMWH#/O*17\KU;*J:.NGI^9GHJU$Q$(NSFJ^W+.
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
M&!?FG]BJ4:W"G-9=_*E=:ZX_A[:"#,ZG(E'7__735:=]^:MDB$ 4XH)C.B:
M"!,6#=R9C!WSNQ;)'NRV-LX>Q/S0Q^6"@:C<&C#Z,&&;Z%Q<^C,4HL]\Y,M3
MR2/,T&8_M>B_B'F[>QM()E3\B^F.QBP<A%8\,^O@YX.\Q+>3VG%5]_#$"*&'
M"^\5I6.!9IOKA@6@4F$.C\C9V2]4[XDL$$KFR66^^ )O\5Z8^<SF\,I9)>%R
MC5Z[)@^N1$@&BHK&H7T^E8I3\>B^]>*$6Z7W8E<B1?W+^C*A$BFZ5 3+)RU%
MA:I)E9&BF<.V2(6(R%&G4Y<DK$2.KA1!\TG+4?$(Q6)R]-'VG0K$Z+)FM:]&
MB(:*0/FDA2C]'GH+(3*>J]B+N@72-Y06(D5VHFY+DL(YC%@U%4%V?6<>D\+B
MU>C62^$U+O,21'&Z(HIUH5$U-K='V]--I27Q-&X@^X6"'=>3WM[Z5>QIQ>AD
MSNP"LI);-J1]SB7P);;G'9 QI]*$5E@3DHA)52M4*3I5X&JSO>G59E9B\+V5
M)IXG<*&IQDY5%ZZL<O/)#83\"W>=O[)P_IEF/KVD&(@_EWXN_/;T1D0W7,./
MWKYRYY4V\NJ*EJ?NMBA<EJ^,G&U0]K+Z$Y72@E47O#P-R<JA<.D79K/?1+0*
M<P546R2SA$?^)'E?ZAJ92GD"<\1O4#@<=,?B)R"SK.)BN;U>_@[*Q73HHU9=
M*G//CL%!>B33!I*U[[/9)@Q[)^Y"K":'@7R(3Z*"U=<H@?N*\_#0#L^8-ZY'
MX?"/03'-H%SENEI?^W4:\FX6\!EN5K,NK*1$:W@_/2WWX.X)H>J:.W7=I'-:
MP[INTN%Q4]W!2HU:.G7=I/-9Z[INTN87);KK:1,?#-8YKZ?>TIK:L*5-]*6J
M'EY5[QB3%9X3YUCA]ODK[=)\T'JTKX:W,.>X'K<^2SO7KMC2U[1D\'1%'!&7
MZSDB%%C^&G@KP,L-OE<?>+U>79"I LW]7T^PP2JINL_J/B%'3G/Y0G/E] -6
M+W^T?W<8UOQ^G.G6L'50J6UO65ODC/:/&OT<_;GQO\>%_O69F2J 7_W31QU[
MOZ<KMO3PQS3G_:KD5'? J$GHSAR&Q1,<=PC#FGENW:WM-@D9CQ_^][%Y]^7V
MPY='^ 2S$S*2-.Y]9\VUJ+:P'6\*AHB-Y' +!U;7@?%H=#G*M#\LK$BI??/
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
M37%?-E^9&UR8*E1R2[W<DC-M>0\H*^Z^KAAE[2/W;AS$:J:P;$T1=!:+*5)
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
M!80_#]BYU//[TI&'CL=<EV'9S;VP/,592O.1)_,QN:R43NK$Y[%DGVZANC8
MM?":L;$ RRE_/^]>E=N9#J!*N.(PQD(U/\B15:&2-X!M$>J_TYVP58T<1S!-
M7_0LE.=<*)Q]N<>IE!O7 TA1!1-6'F 9O/:'!5C%L[)6#Y[J&2_-/FEH4Q^,
M3!;1V8'%K</'KD@UGA2NPJ!*=O7&1!!A=O5G'>UOI,NZGT:O1$XEXSK#??]3
MB_Z+./#3+ZM%@MB_1 $/-!TRTDX/?L.7N('+R^@]J<O-'4<I5)",2'W1DD+Q
MBO)-02W/=0-/6RK,Y1'%8W;2CS<9"B^JVD*5]Y7)C0!+U8C-X<[Z N^$_=I\
M9I_I<%#% 6ZP/FE#:<$I'\"Y6\$9*"HNAPZ2JU3$2@7*EQ(QW%#!&-Y3X(72
MDJ7:EG2I"+Y/6K)*%50N+UGHV=IU2)W20J7:=G6E"+1/6JA*90^4%JJ/MN^<
MM4RIME$-%4%VL0!!942N4#\KDLA2-:++2Z3QO/-=[NB2DI7:^2A966DQ[2R\
M?4; KS17D:"5RK^H./1=Q93F33>V$S.ZE#7W3FJXA7,JHC'O>[I^R^*'+AR6
M$(OF^&18['YZX[")X65?#NUN8 $U=/M"P[Y0"@/UIO+ZSH>XV>PEM]%XJ7H9
M@((7!AB^BQ&2IIB%,<T"CRS4X8D?QMR?1VX\BP2?MOH;EWR/ N.C/J8B[Y]Y
M)ZZIY?LP$"P>KK8];7M*%%LC""7S%S#""8.)GX@XT_B$L1\+PX'U@:>RHDM;
M_8U9K-.FY0.V2"K@5O=8.SX#$_B((I(F^A)C19GUZETR,V60U"VI QM1I&FA
M>,=6?^.+Y+0!5A":V+KHIX0F:C:82A2*]:=NFMHWSV',T_X'SN46(!P.!W.F
M8:/I88H4Q.7PX$+=RHI,S)&.7B&NQKR9^:@;SC]UTX=?K$A%!9*P.F5K8F%:
M_7*7:"E#^BJO+]_;CF._P#]N=(P#\)8[$FUQ88K1&L^Z89*08YF&D6P_51H,
M%R_$,?S0 <WZ'_CV:*DAB,9"IX*UPC#Y83638O5-!1,I#E7Z(3V KH P!_ ,
MZS^X!7;Y#4<2[.6="PU;UJAI[3/3L6%1".PDZCO\B:EPSRP"$B.()70QZ*A@
M2#4O13@SQCR[9(J3]DR31J"<PV YM)EIOQQ'!%-W:ZR^7XI*5]]FL!O\#@>[
MA8''VUU'+M6%(/9*$#XX6(4(;2TM?$T!?Y0KG%)"^?"+7!>1./+" C>ZXRPI
MG*]BAT3Q+M"^J&IQ@QIOU2[V!["VYI1(AR91C;H:=;66J_%V:GBKM5P%QF/!
M>( *>!FOR9OV5H7+N3/.C*DGO9[T>M+K25<LQF9?VU"L4OMPX;UZ]^CH$R0>
M&3/C&=W +E$&JS"7QY-XUQH4H"R4QX.O##F8V83?=KHI%TSIZ?#7XS%]X6NP
M5"E?K2)TK=$:K%XQ*@B&&H8K,,R-]N<PE*>&^VD G[0[SAJ#-08WPF _/4$R
M1K%T/*JPVU>OR(Q2+2L+P]RBGT>E"E7$H.J%CE;MW ]_^\:":#1%R(GU%+5Z
M-47E2YGH]"K,D]S(NNVV!@K%#M;XHUSB74MGMS&XNE1..L^TY3T@N #+YD:[
M2@U?54!TRO#MIY\/*['-#X;@7F]0(UB-EO> X-RR1L>H@%6$K^I>[%?O/AGZ
M"',M#*;,C:JR8G=JPSW'ENLE/OF6ZR4^^9;/:8F/ST/(C3ZFF4QWF6:/H%U*
M2795F,XC<KT/<BDR*SAEBH7ZA.N4]I4JO.[*V>1*M:PL]'(Y?[8]'M:X.W3+
MJN*NGXZ[ZAQK>X!>9[78I(((J+&W@KUT"HZ*7&+G"3S5'6"KQBO5%),,/XI*
MD#('K2HLC5RVZFK"G*)UXG9D;BA(4WBF+>\!LKE<316$1.T#K^J%0IUIRWO
M:VOWD:2[AVQ_6$-6D9;W -GVCJ-.]X!7!0.""I')5M.HMB-.L,[PHH_?SR5#
MLVS-#"^V(]1F<5HSAXWM)XMHS8C/C 5DC2[R?2%OIXX/^8[#F1Q=HPREVJ%(
M^BXW9EJ]L\;VG#WJ/T))R"([TP3?,&P5("7XPU]7T^Y0OZP M@%[7_="XUW2
MH$_L5"C[[GU'@X,NKY>J>?H/S0$U1B@M5SJ:Z$9SBM&6YF&6./@@>Q<  JE/
M;_B*@RC<+QAGF75+\*YV+U8#='ZFL>0,(9W#+Z6>[EZ&T+]8+7[[<[SZ;4-H
M&OC,-SVN6708$H<Q+O:(66QJ>+^\7CCVL^'".]X0.>SKG&FX++N2Y',*AOZ>
M-_D@&]RBZB! &3Z/G256?>UO.#=LWH@&91=VCR/JK.[<;])J'&>J]ETR@^=S
M3*+RVP6G9$  LQC-G+ _)8A!UI2&2:A/F(D4@Q$]G.6([!;Z$VN.'*9_;^I3
MCSEO-=U\T9?NJW=%G)3B;6S^[C== [4,F/GI\?[FU3NJ8$P$\8AA8I/5X47X
M8+:A5>W.'^7[)\'*V(/W6!J;Z:3X\ 2)]A+RC3<T>"NL 24,00]= _#*&V3/
M\&\PMAH:G!!FVL+&<N>P(:+JL!B&##PS9$G6\8N^.=%T4NF:X;G:LP$O@!:)
MJI87X(8U-HW_\.F WTS8E#D.Z%]4N9* &<F;02O3L:' %]!&G+ %(_<P9WO'
M!I] ]SC!]T3S\"W"A%#TPIY<$#DY4J4'W+JV"P^S.4P2TJY/#!B4@]/@PL9
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
MB"K V3 0OCB=3E9(C.5Y(Q-Y.HLK95?!8.#&5,SNTG>NB'J?N-^%\QYS=KP
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
MAG%\F&XEY$\@8SU\&;;:#UX(+;@ %*> :1_854BF4GPA37#1)"*[WI!2:#-
MU8\X&,)_"<Z! -%PZ"F1@6H_&P0=4%5R+Z%,3V":DUWE95" GKA/ <8 ?Y35
M2.,JO)> %RS"NZ ,AX'M=!"A*6*R'TM.FES -R !=4 6V1Z74=ZNWPMMT"9
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
M_+O"LVAW^Q02 -<!$L&\UW.[+O?A_Z._EL?XD"YY@K#3H*+_"1Z.!'FG5PN
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
M@. QP_<KNCF'*:"GL("<_+]M/['#$1O?N/#E38&*ZF7^(KII T+B((,SCJR
M+Z58*B6G>IVCR?[3^OKH]&A%K<=]\6!Z4U[DY'(RTT2=TDM'/CVUFI-U[$PY
MEM?06U%P&7(K(S<ZK[8-EM>2VXY=[+2]4N[4=G6WO;[F+&WI %CMA%NK9;7K
MU>JV48VSU)!;*;GA?6[KI1#7';.V"B.'ZA(UO\1)U4P;4WK<S8J[A?OST!X)
M$U<63UL2W]ZUP]#E8625U1T9AL&SZ]"O4="+7^R0YY]U YP\Y)X(_PZ*9DDK
M,ZIX=@>KI^#K\#3DCAOCQ X.UL5J*?Y3&K$NMNK8L<V$_Y7UX1F\D5N#&DF9
M.J-DB-'K:*\#,. X'>[SGHLO=0(_H0HK9#7LP^?'PJ"*9A/N1[38!<*(NU.0
ML+?AQ":2U$22FDC2BE):14. 3"3I7N':1)+N":Y-)*DA-Q-)J@V]Z6[-G(PD
M-6W@31OXZN)#@S;P6LV\97QLOW/)GLZ\LACMU<2@ZA."NI6R*=,LGB]VWN*<
M,_^.5U.98WGN8ZRIJ*E2;YY.U%1YM3&71CRO3PQ89HZF94=H1:> ,C++#MRG
M,!V(3+]I""R\C0\0U/^XN6-#V#I&P-&,IR5;*!BL1?66YL1;);;N_ ?UTAHQ
MHI3+-!11G9KFR>J(:+O%591VMT]%5M2>)^*8E=,'?D-J%90"-!QT76)$HN/2
MXBHR*KNDOLH2_@]33L7X/XS_P_@_JDUI%35<&?_'7N':^#_V!-?&_V'(S?@_
MM*&WZOH_AJ:BQOSTE MC;=<'&^?-K0?3:S7SEJMIU)O3@\U--8V-5].HKZBV
MR1ZZ,K*ZZ!%SW)!WXS%O1:%R^C2SYI^)'8+JLD%3^EX7<3Y=UE"UHT6<U^M/
M>9"M9F4AAA\<?4X[[4W)[WB@=DPE)OR(BLB04Z682".$!GW2A>N*SSU9$":M
M("*:[;[:46DQ=,/XZ,>3XQ<[2 RP(\-_4E=DYK#L_IFX8:[2B,7@O\_PO=H0
M%BJQ'=6; ;_/6@C#JPXLNA^\J+[$V*IXW#64 4DFVTRL1B7?D$C%%??=(8X'
M%SL7F0?$":>E];F2KO+3;.P!"./0M3T%* )OFLTCO:<+.*>BV>@U/BKCHS(^
M*N.CJA:E5=2X:'Q4>X5KXZ/:$UP;'Y4A-^.CTH;>JN>C*KV#:V*PU<L*W[#:
MIZ:OL4[X.+\XTQ J^XJ/4X.,:ONU3'[.2MH:SS!ZHM=KD22=S.*<?DD).6?U
M4J=9/+8&Y2Z;FJ$B3+KE2\2)&HWIW8P[-O9\[<33O7:4F"#J27D!5>9&.[?<
M0N-\9Q)@?B-#OK#27SH#UW=!*27OPTY[;?+;M@O;GG3=8!;4=$?,[(0Q] _P
MG[R;X-#HBRC.->1A%*!_!MTJ3[:'';VQ)W&^/7&7N@8H=A2T/PR#'B?>@CUD
M#AC7ATGB(.<YH0X*P&RN= N-^UI*O"K9+&.+[0;A,,"&W"F(%O"?/"T :.-$
M,4X4XT0Q3I1J45I%K5_&B;)7N#9.E#W!M7&B&'(S3A1MZ*UZ3I3I5V)-3(1Z
M68KKUD735'/2!Q\-JWYJ\*$//@X;C>GI5R;?9_/Y/BO"QAZZ1O)^@47LF5,=
M)(614K-PV5AO*U'6J&%IK\)L$V721#</J@,F&V>..4#(!+S(=FG&@J^EZ*[)
M6;!+RI8USB=*3*F:8VE9-5HJ6HE5B;3\D*,HYH.=\<?<\XB3O0\A_H4_<R\@
M1\!.>V,*FW:R36<TEO'38EZ9>>DQY.1(X@@(J@L_<A]D,.<A$93J_SSFG,RO
M"R;'37>I$U5)!<(>M^,DE,XAU7%Z 6]).!<0QE=B?"7&5V)\)=6BM(H:N8RO
M9*]P;7PE>X)KXRLQY&9\)=K06_5\)=,NK)H8#?6R!->;)N-$'VPTSDR-.GVP
M<5AO3F^89+PD&_>2G*ZH1MV>>TGFVS&G^4C04&E[7M!-O1EYVRR,2Q;;M%_*
M@W(H/ 1>(FRO$7]2-MIW]6:-V=2SO.?ZL.C_\ 7[L!1ZL$QSCLS?)?6+V1G?
MQ"WM^L;O JC>'UZ+31[MM&=";-F56Y9X/9H@W4CTJ >EFT>Q?-W*'LCO+%A/
MC!9\4'#1_]<EK9P]V2Z0;1!2HA&Z+O !"WPB5<QRDN5WAQS+9R&MY=-#L(98
MKN]]UX[Z#+5F6!DPAA.="-C-]ST$Y5LU#@?C<# .!^-PJ!:E5=129!P.>X5K
MXW#8$UP+AP/3VPQKD+X6L[_F6*^>\;W\3D:7*TW,47K9&-O3;5K[8!O4"QF'
MISMK[MTRE9O*3=6VO=>M\Q5EC.RA\5V:$E/3](09KV!O[\%\XU'Z8]9+8;J^
MF&@IGA]>- ,O2QX8MWR*/ /3ZF0SK4[.EK4&F58GRWI#I"Y_.Z0N&/X3N^=1
MXHF4ECE^J4/,QND'201L$QU]6'E4T.;LW@+LQ_C6!SN) _6 "%$\,:;QK9C&
MSU9SUUW6&KY>6IY8P%9M[VH1"N$3*WB=Q)^D@W+TKP'!Q.W9QB9%F)9@GL=@
MC[=W']B .VXR@&7Y_".;L"[%^EB7WN@>V"(2MK^"?2*#V9Z#*IL.4[$3I9I3
MVG)XZW==O4P>9U;[S)2\T <?IU:]M74KU%),V:/_%9BRS-711)%4RJW9!4C%
MO'W8-@!T-H;MVG;W<>9]0O%;3_BIPJ1HR*(!2^7+52!+/51)*]"&%I>PO;<N
MIMO>]P&2NX##YL76$ZW6IGTL*C"FM(+:.I9W@;Y:,W*5]@&2NX##1G/KT2!O
M52H6E 2SZIEN':&[0$JG)K"H\CBL;[^&[5M5A@7%P?24_:VC\XV6:@U(;YU&
M]KQ^:P2.H9-Y='+1WOI-=LTQU2N+*FM.<0$_!C$H3L&$;=?P087XX-1J7YA2
M'X9.YM%)RSIO;?U<?:L26"HQ5:4"S*L_$D&O4J91,(LN]*D-M;WBK#7%A"J.
MP59M>D**CKR_J+8T,TELZ]@S)]-BQ;&F1U-4-%G*8'P.QE=:#6T#6D6'8ST?
ME1 3VS]9]8BM 1AS@J3C\8^O@O:\2*I7KV,I5>2TJ0_D#<XW@O-F6P_K];J3
M#-,(X(TF-SW.J_@U5O!K3K&O+20ZK;<<7DF.U[V*2=KADGC3 [15;YY\JFD^
M=LMSNY0,BNV<+!8EG:@;ND.JPSBP,674M_VN:(<5)<-A$,86UKWK\2B"=VPO
M;<TC4TY]/X&'281]JN H'X*@H7 /FN DR\&3\T8,_^BXG@>TV1E1B3H_&73@
M<U@EK+V;A"%FZ$5B0G@_+0S)^C;L*@%ZIF9"0:B6WZ':?S#9 KO!)%Q@@$#%
MI\#>GEV'BZ8^*922H4,5!?$-=X#O</13$<3$,/BZ[3C'.%/@)!YU0$I@V^Y/
M!9MB]Z[\>D J#@ X=V5PS7TJ41KE^RV5X@)6A4ZUB,#I^E%L>UY:6S/=%&T&
MUI"ONTGSI!N(0UBD@@SLVZ-=B[>IA*?GX7\%0N SP",@,X2WX:,%6BNIIF**
M5DU=0U/74,_D35/7T-0UW+%26*:NX5[AVM0UW!-<FT9*AMPVB&W32&G7:CG.
MRO;6R:RJ28:QR?C6"Q]:9'QK-?.66XU9YXVMY\#MZ<RKPF%SNA_/%(&<600R
M7Z=Q>L+TU-9+8Y4>ASP<\A@M[!,&?#42M5BR:F<M:8\O?!]RM*>C-7;B>Y&<
M66XCS[L%1 .EL_,S"_[1BWB,9OMBI<ERF_2$'5LLM;V-5DROY##T,-WS@32*
M@^:+K:@(6K<=F%4%,4XXFM[.T)LEW+E[9(?W=[?1$6!RB VW_%BX&F**4>_"
M]D*[&[-GVQ-8MKWL:<0BF(P[%O. 1E): ,H,GGP D2."0N-^$/'<1S;1W9BO
M$TD*31LG#)>34KK#6O5?+'0(O3NW+L[KR$CO&N=6X^RL=!R+G!@YA\*[^H75
MN#@M>QGF^LR]X 4YUI8^#1!V\(+C1D//'@E(E.C0JM9DF )WF -ND .NF/:_
M;3^QPQ$;WZQP)DV!A"47\\(I00"0 -M)88LC*X"_N''?%?VL?* !^(<;QB.@
MTI_X"?P'_I#NE(GJF+O@2%EGH4P];G:E-SEBE%("TT1ET4MY;=9 :FQ=>UU+
MS-P&*:THK RAE;4 IN-IVV!Y+:'MV+5)VPO;3FU7=\OH<N=G2P>0:B?60)&N
M;]_ZLU/GIR&T*80&-[9M@V5CW1/>8,!0Y?N6"I6MF@5C?HW":8&QM@?_INA-
M[O.>BS&>G<!/(A7%&?5AN.,.F1G09L#]B*[M\.L@ &+]CPB/5$U6,*115C9!
MVP+O]GT0,T\P \9>VOZ3B]=9X &.,W7ELAT[MIEP=+(^/(-;IT4W=.=X:&/'
M:;4O:T;$+0ZF0D^36#1I=S)[7(@=JZ7!0\:(%HU^$Z!;(*)3;<!$=NY'6YOS
M98,!=[2MS=;#>[=X/],KC,;$_>JI2^\1"58TDLL$!.\5KDU \)[@V@0$&W+;
M(+9-0'"US=Z3 <&+-'PP)DG3P$%[?&C0C$&KF;>+CPL3-:^EDWEA!*ZF+M2>
M!P5WYWLJ%@P.?K7K@@)QVXVR@.%T5>1,H!<;[>F1OR*^=X$M4>AO8QNAO^LI
M.Y/K</,MZW"SRQ5GRGKZI$6ITPHEX[XU&0>>?3&3:(%(!ZZH^V+-<+S%H?W,
MO71RC"RV'5EHA>@[JU$#KSI C_W@)2HZU'(KREX&5AV&@9-T%9=D;PV "4/7
M]J(%/7!B[^.^M85JI,P$]-XZUDS)%.,ZV1G7R;Y16D5-6\9#LE>X-AZ2/<&U
M\9 8<C,>$FWHK7H>DBD=;K6P]NEE]#4=:W7#AP;=9[6:><MY@+6M)P'NZ<PK
MXRCC%EE%K9199L]%/2*9_3C]DAP/YV?,<4/>C8M?QV-K4,Z*$K](B2&87LO9
MEVFJ\QG.DG*3L%CAF9BTQ+E2#IC,/=/<':]*OEOXY5BW\!UVK4QODC[I7YF=
ML33;ZX>N _Z3=Q,<.BJ;;LC#*/!][HTE-\&L1.A(?SFR]^T!+\MJ\OB3#4-@
M'7^+8=81-7F&,;M=T.1C1<V"OJ<T%\ -)U[:22#WP=B:NT$(_ 1,F0)K 2?+
MTP(@-YX6XVDQGA;C::D6I5741&8\+7N%:^-IV1-<&T^+(3?C:=&&WJKG:9E^
M.=;$C*B7.;ENG;:->5\G?-2;)NU!'WRT6J9#<;7=+<T+XVYYN[ME$0/H1M)0
MFLVV-5'UOL0D/):0,O9%SK)<EL%RCJ;IH.O2#K 0=FY46;N<C,QH\D7S,(([
M/^0HBOE@8M)Q$S5-5;?*W$?%5K"S@$Z#7.R,2^>>1YP,A;CG+Z(NVH T]!UV
MZ!0V[62;SK"<\=5BCIU9V3#Y>F_D,_5!#',>YG-;QKV>^45A&^ D?%WYMW#.
M3E,GR@A>0T_(F!]DTG6B7AQWF32-RV2_#-G&96)<)L;695PF!M?&9;)7N#8N
M$T-NQF6B#;U5SV4R[?JIB2%0+X,P%HDR#A-]\''1-B74],%&JVYXH]KNDM;T
M"GC&7;*PNV2>G7-3SI+3<^8D7-E*;<\+NNFOL$9J^1&IAJJ<77E!XK!'[G',
MC$E\MRL[CCXHN[!J4FI'V$*TY_H B?]P^GC@/H7IX-3K \ 3#'@8J?G_<7/'
MAK!3;&I*BZ>)QW;<Y[9#GI1RQTC6J*34;EWPBYS5YU4BFX\G2M+9H'MEK[N%
MM)<U->YHMY#U^MANB?1O?.!Q_O[P6E#ZT4Y[V,267;EER=Q'$Q*8))4/X@(D
M%) )9@5VZ;+)GFP7.YN'S LBE3@5Y :E!TLD% 7E"S(Y1,8A9AQBQB%6+4JK
MJ"73.,3V"M?&(;8GN#8.,4-NQB&F#;U5SR%6?ENT\&:HB;57+ZO_87UZ3:IE
M5G9D(#L!V=44BS*0G?#C:@B1?9AY5?A;C<390S>5-&BF+I )&^14SU2)_T0:
M/RD)Y;3,7U-N2'U_*,RH1^++5K725XJ*61'X4T&O=+7?W3\3UW'C$4'KRAZZ
ML>VQ>^6+6[D6J1L)9OL'.K/9  @E$47MT"QN=UP/?T-R U4PPO)WO9[;==$G
MU[6C/NMY6#H/?L<>*F3XCOI!&!^#1BQ\BAY 3_Q%[X=83RSDZ-2+U"R=)')]
M'#P8R@XPT0G[IW!G^ETN#/3I3SENB/N@K#[U<V7')K-@A-M2MH61-?Q@N06'
MZ F[I,44;?HRYZG+!QU@K2SEY86SONV([> K] _<UC,,[L=I(EFC=DZ_OZNW
MK?I%$PNJ14/>Q7PQ;W3"Q"TAHDRTJ4/A5AP^Y*0-LV08^%)@X'=4Y<U_DKP?
M]UW_";;[$H0_J,2@I&60LP/$&WI5HRQASG,%<EU9K4T\51UP1/(<P-H>H?3-
M/0D!(+ \>C@,^=!VG5PG']S$,R G2"+\)$QXX5?T4GL>_G<([-6WI4<7L /H
ME3R8+SB'!>E@''@2N1*;*;& I.L @>20G$%&H%<"@#S;1$HNYB/&(1 "TKCT
MQ#N\$S/<R$@0);[N1E&"I(<4%0?='T!^L:A*"9=+5R1T$27!XG&]R#[^,X_B
M;(C(A>,8<Z&>\1'1<X=[+OP)F++C<:*VD4]$;B/_Z4:4E>BEO*DB UY<@!X&
M%$2]D=SC.$^ARPJ&]X"1!3_ZP/:LWI"NJ&J)]EE>4P$[ -,ELA01\D[[3*\0
MU< ISRZZ7CHC]'XF&&:"Y)X"PTZ!@0+="4'8^/0RI<7&J7J!!SY<H6T')Q"4
M [P S!T FWA<.5Z[2TXJFG#!CO$Q,(<2L6@/0F^K9-9,#E <S !%BRA,F7[I
MN%$G"2.>K@UW )MQ@E#.(C_#67"5+USR(*4@9Y4PTZ*K0DBX?B^T,R$@LHQA
M>%77E4;V06-UAZ1I/87!"S#EV%&U@$NY#'SO#R7PCLI19OS-Z_,WEUBW>O2_
M?7,/&D>T1@;6_23!BKH6C(=ZKW!M/-1[@FOCH3;D9CS4VM";[AYJM>+OR]_P
M-/'Z:.;[LQJFR*)&^#BLGYD @K6UTZNU-(3*/LR\*ARV6\;9_4IG=[E).?."
M+&S_9"]VWA$XS<XMFG-9]7/XS _\8^%?RW<(<O@PY%A9$MT[Y# ?:YST[AP_
MGIG6>=XXLTKZ?XDF2YF_3!6';$S/@ASWNXE1Q_QH(I?RXM0:^[C,M2=K=+8F
MBE^F7C;E&@,U96*IK7I9T<R<IU# %W=4$FN UG@_#L*1>*O=K)KOZ76D/>8>
M68:L6U/)>@RTY:1UWJJ]"L_UYODB>&Z>7Y24>BUX@,5[%_4R=EB<MNM6[>(B
MSR2O9=UVJS8_*?L<Z]&.B8W%$88CM)JM,OJ?RH^GM7;56&&J&_:&7&[&#>LH
MB1?-=,,B4:G0AUF1#S.B'":#(M[NC"Q=N'%&FN17XW.LNL]QWRBMHC9AXUK<
M*UP;U^*>X-JX%@VY&=>B-O2FNVNQD/S:QN37.4[&LIN;)O9VO3POQQI"Q.!"
M'X@87.@#D7V8>57XFUYNN5*^R+VNLWEAZFQNP%7Q-76 [9"KHG4Z==Y9GHK,
M&3C34Q$&H ([N8K$*@&2\J&&TBL1VS\YNO5<AP6^S#F,6<3CV..J15T^C5(D
M2-X__ '?IFF7F,854+]&RBW&MGJ.=*!:8POQ@YCG4E-SN9L#=(L&?IHYC%F0
M7$PW]E$Z(OZ6&P$^]ER?]M<-N>/&%G-<A" F$<N7TI3B,>"HK%&QE\$ QA+;
M%LY 7^2_B21/&YV//:J6_$KW33D.*^*T,0X:S>P=QD%C'#3&LF8<- ;7QD&S
M5[@V#AI#;L9!HPV]Z>Z@F>N0*;N5:6)RU,OP7+?.SYH:0F5?\=$^O= 0)ON*
MC0N3)E9QQTR]=KH;KIG-1FF7':]O-G66-I:2M?,P%X8[Y2;NHM5:Y*9<G!=R
M4TJLSP53L_BJ?BYJEN7-W7PP]((1+#VV?Y)1N!]X:)S,6907M:.+;)>:-6[-
MGF(/%UE;5<M!V2()M5Y/0D7BJ;7F$4\9JMJE3HXR,I.9>*LFK;-:U8AEJA?P
M2F9E);;';COP@IWM]RH8#%Q1#;'RCL%9#'+]L\N'U#0T$LWUXC[ZJ+X30=5!
MC-1%0EO]E)(-L2)BE[Q%_@@92!">]!H!/!W,R4/H^70AI[*)7]."JP\Q/!"4
MZ_I=+W&$!_+.#F-V8[$;^)'5D<KBOANQ_TG@.0^!S>XYU6,$0O^*_4GKM>/_
M(1D:<O:"_\</6 3;<GMPD*+'<*SX:X9*!C=&JD"9(3[($$_5*!TWZGJ!2MR$
MSR]]/Z$ZT.-K^'LJ,T8<J[N2K)@H$KP;W"(M!+>]'OML>R25'OI8YODR#!'8
MDE%VO$(VE8:V)E2*%T[%F8$7, 8S\)X%\0"+H'P_[DB 100P.P<P07 <Y+SX
M@AB@66L>VD>'K:-#UZ4J[ _75T!]3XDG$E4?CO^^4S1U+^O8HQ08L4> 3F2+
MZK [04\SHC)N4<X^"W$AB*EA24%* I;<\AZG(O\D>-,\3R2+2\_C3R[*.U!R
ML-(WD-/OOU]A*8"_(PPCYKD@]^!CE70L!L2!#W&\__I+N]&H?9P<AWZH?SP2
MM=ZIH+10%A[@&@1K#7S.^B!),6!@*(R8[! =ZT="=HOP!^Z(5JQ)',7P#^H%
MC<G74?GB*4-=M2) P7H(U&]+Y4WH.UC,&F4S#J4.H[3P[[O&28W!)<^C*!'B
M'5LH<\<DGD$!',"RL 8!'EHJKD6!&@-A[&>8%AE.;'-RBOI)/9L"-P?3P#P-
MJW56MTZ;[=P&<V,C..OG'Z-"( B&NX3LV?82SM[53FJU.H)2#'#";B:C1.A(
MC#/N$)02B:5^#D>VS[Z@F FQ'WG7QKZW["GDP%IX1MFH33[S%%TT#VJ"/!Q;
M+86@A!R[0UB90EP.PSD0<J,T> >)(>U8,21.S^U%A+UX :S2AC4+-;1O8Q<"
M:A= *T2U_+!Y1(=M)&#R9ZHAY"]3WT&<QJ/C:[Q\P\!!$B&J1%3 WR39TH^C
M8Z1DX?6)V.&[B[;5;->/+*F<"#*#\;&0-)!>"[#T"T+WR?5]*DWMLTNX"WB2
M>9O+]0Y R.690QT3$AU%8!&XE7Z/E2'>-=M",7O7.F^/]Q/XDE#K]<7*I^ @
MV8H4/U (%VS.Q^+7'N'V0DYX42O.)VMI2T!1%03QXOBZJBS&9[:P!IV0=T(@
MQA$KH%<!D_PN=,13LQ9DBL03F1HIN1-!/\38(X#]=L*^N7U[Y 46]H9P0U@<
MNQ[PT(V35+IT CMT1'ETN';&01C)2AL+<3W)F(*\[4MVE2O+&FE\"]/E($N+
MVO!XS15DY8V*(7I"#K0PQ/!=_:P-BT+]^8UDV<V3Y;M60Q!8H](45O33+=FL
MY@;@T25NN^>$VTM14P4!? =OP+^[,[5R34)TERJLX_I J -!9=EU5=SI\,8*
MET=Y%>VF5]%N_BJ:[_V17D7%]_25+7I[2,UH'F2EGH1,@<5B0K@@TBQX?KJ^
M,.KTX-_P_LFJ@;_/0?*MF@F2W]#E[%>,C5!8MV/[*?6".&XT].S1!R!]C)(^
M8*[SUP.W>?!)7&)/T'P#3 -LAB<%BFMXX*F_OP@K2X+:LMT!-0C%_P]@Z7LW
M^@$2"V;]I+?@FIY;(/NJ724ALOY(;JGB-L09U]BOV&;(\U#+< ,'BY;Q"#4>
M1]32$MV1Z"J85L%-BW>1^0X^<.!BX8/PQ$IGW)=_D$WDCY.'$^8('9U:)\7J
M>@(WA&=A=<$>7 /4>5"RJ[YV707_$."/I9("+! &@Y*FE:T*JYK)@F"9.T &
MXH.HQP,!1DU'D]U?TNERFT)RE\D3>)KD5EXMQ60YU),O:Q+U+_DF5^@'&1*[
MXP$]@:&>ARUXQ+E.AH822L%#=I!"7;8+4I<D49G."8@:\,0'3"0Q7H'S=F$T
MX$H%%5$8!]@23$U ES=8-#;YR17L$S0\<_5$7P-[A/=NK!@W0-K,S;L-Y+]2
M2(HR;CUI:9PBN%8H@%\U5"$QOD7G,X@%B?Q"8S4WW0H:$U!*V!GC\EZ/=\F@
MG^_F9.5T1%0B76%K 3H'TH:KD>A4F&M.>-.33@:D0!)G0".2$J*D\[\X1UST
M3Z3+P@LCL@R=@\0R2$9B&XQT"Z2W!"Y/RE%(O?OZH)EP-:5J? AW]2Y/BP["
MPFX3-&$IRQ]LH&>[GJ1A %84P ")!]JJC1:6>2"0[N0R$%1,MJU4WVE)?:=U
M0CI@&'CB4+G#C# 'T5IM908VU?6 +E :\"<[=-0%_IJX!S,$J5MG+Z?138?$
M.D7)1@SVP"57?9?WV/5/WDU(D[W%)JC C>0TIM\R?Z?\S6)TZ6 <S;WB6*,C
M<1R$R(1.!L9N'HS#%(SLL.@TND] 3M2;]G']]) ?(:/73QWY1W:U?8#UAD(]
MN596GTMA0*A?4%%@F&<@+#%Y[T#^9>47.,*7I14*DR'E/X42 ,M^)F,7&=CA
MU!:.4TMH:]U ^7U10%M,Z%TR553!1QS1\"2:"@1K46"11$XAO1NR"ODR<W'?
MH'$1553)=@SAGR-" 7\@NNKS'WDF!"%U.,>PEW%?OZN T<T#(SO/0@6,,BZ*
M%!OUCF3,@R/_RO@HSP]'S%G&HDDJ"2U>Z2!H.R?2I+M22%YD/+Y!,^C ;Y[[
M R]$V%%Y_ -KN=UND.[WVC!5-X:IM5#:1.;*DGK:L''PZ>[R_I'=W+!C=OOX
MM^M[=O/]Z^W]M\O'F]OOLW6TBIX2KX646Y<Z;?V$_0XZGR=4.$Y!@Y709A>V
M7E  ) Q%7@/X;QK*DP_C\>R7*'$Q6 > Z XB2Q5:RX<+#C,0"3EOAVZ4.L@#
MU)OQL@<WKE#$@A:Z!X<J@ @%/1!ZQ+#-.[F80SI80/S[4F?"):+-0EPKZ3C)
M76IM!TX G%BZA\8OMZ4WN/(+7R!;BO>\X&7\DJ<)HE=-^+:B_,L3,GZPKS8Y
M5G>*ZC-Z&Z!'E:Q7/;%/06!H@["E<21'/*(I-QG=,AHJ=*ZWQ(CP_*7O@N:#
M<W3X** HH% I*>AYSMQX\/_@AA3;P"FXDBBE<67($0N5Y"U[?Z=+<L?"5N6E
M1024TE_U^D=6BE/EO).7%^K@D$9V[L8]X=6,T)!\T#AA?_@A?W(C$;_P8,L^
M(==_)FA4RETJD3C^$*)-'A>[Q37? Y\;)7HC2G3#*-%Z2@;W3,J%LQ.X!_?=
MCAM7@\EGW22N__6WF\\W<#, JOS7>F\ Z=Q+<7H.?F]D[W(FG5;NZ6Q:;N(!
M[/-EI343YF!(D-J&<*-F_1Z<S"X6I1(XUYKTNB"N3MO+(NNU#L(B3L3"O_"H
M&[H4.J4?R,9!U6A,!U5:"^1T$W1]DX\9^XQ93C)8;'D@KE% +0?=<UV$QE?7
MX\Z&1<;? 'T87%*"OP7UI\UPB!9\>#J54C9!'7#1JS"733^:-P"[+R"O#.Q>
MJ50DF 2B'_26$D]G.R&>,L5I=S:S0WO9)2+;I;V<ZR*8%JL!-TWFKZ08W$%F
M,>K^=()_\Y_->OVD'P\./C7K)W5A+MH)^39UGU<(5@QK)&/^71)BV7/R3.4"
M*EJ']A*A2+E()"T@N$/,NTN":)?V,OW6O$91^Z]72MD>_6^[4K:12MF&%C)B
M75*V8:1L];AYER33+NVE4E)6 UVVH739QF[KLHVYNFR]_?_;.[L>-8$H#/\5
MTJNVV?J![G:O-D&6MG01&\'&7C540$DL&)"T^^\[9V9 XZ)U(\,@S"9[LPL,
M9X[GX8##^^*7^=0.4!7_MS^X[=5B3AI4GTUB39-B><G-0^+4!9HU:$UE.8=F
MHUM3^;^MJ8"F $U[8[D>:%;?:?9[_8YN6KQ35!(:YZ.I(:%P;,54->EQHL[&
MFFES#ZY!M=0D+C0IECI_%U1]*PA4L]0OO)-2)M5L93XQ)^,?DC:W-=/2)Z:$
M(M3&BL"<0$-K8JDSYO@T;ZIB\$X*8\RA"-69@5\.E@S=?!HIENCM!"C:$TN=
MH<>GMWO4/O%."F/HH0AU4Q?,$YQH9RQU9AZ?1L]01KR3PIAY*$+-$+@3B&A?
M+'7&'9\6[]M4XYT4QKA#$5H(;^+&5I"BI;'PH%YU7LT_"W_PZ7!0FB!'&53U
M5?AN&MX?S__]L/K3T4/LFAJ[V. +^P_ PFWR61GV[FSBXY-9/)*_6Q_L&RJ"
MBVG^UIMOO3 )((NC3  K%W>5#"=<IL[2>R>YT2(ESC:@G>6G<1@D*^K&!]KB
M/KP:C^5&L;D8C W>;*#R1!V<<G,<V&H31]AA*24>R9LTWD34CI@N[$G("??[
M6'Q8SB2U]E:@[Q:>#V ;NA_=[;Y@A^(EZR D!O8/?T!;+[/<W!-9WQD=YNO@
M$_#(6^P)E9]1E9>3I]7Z38.SAMR;;Z'?=(PGN]_.QT-KK$LU49-@^>;!TC^;
MBCU#7>$5"#F=,DP[X1RVORB1Z!=B2]/<+_(L>72R(V$D-:=T4["^<]($*W,&
M"95;)OX/V/"!2)L':)A?WLI9^YGI**83V8#Z6*?@#(@/Z*3;512CF79K)=I<
M6F]0?D1KS]\6=%[ PTS/1\Y+@=$R8%HT:NS]]4(WNI'T<%&L'U5^A_LJ\8;;
M'I/^]W@.#EO!"EK\047WD3*38<Y,)[,>]A6VE#3K8^=9NB,B]T6SQ:;D1NAR
M5C3:4?D7-J?13;K25\_W8^\9;%N?HCCD6NT5EC;+"F.3K*)$77K,(WXP%7P(
MN-Z_,'I6 )>GZR';N<\WJD+<[O+'#G93L$-TI>]!"#<@=;LZ"OR=&*\@=>70
M[X7C5=/IU^"G-\-JYKA+C[S:_EX__ -02P,$%     @ %(JF6NV5S ))&@
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
ML_ECE&?WO*C6; ^='1XHH]H3@XX1>Z^MP6%$#IB,/53SO.0E3*@B\8//NH%
MB;'_(;+YIYKBX?7\KW^KNKHA3 1IR)8HC 1\-6_)2>;L04[WC; OV"IY"QB_
ME*7 EH!VP\#'?=NV)* ;)IZH@^Z+*J_XW5:S-95+=E$_TS0\8.A-@(\)CX9
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
M=1$<8#U3&0EVGZI[=0S#:1R-HN$@CB;C&?QZ/9U=#\8QQ)/'JGJI3&;AT.8
M[]Q3F(P@_A#";# ]&XS#F3.YN0P_P6 86TO;=1]M^4LE5_?>PG5SUAPV89>G
MU^FZ)_^CT>_VIM:/!"12")H8)@7<,I.#R2E\7!&%5?,-3&DAE0&9P5#1-16I
M;$ DDF8#"(SI%Y(2!%#XAI0(=>O]^N>W[;8;#.6R(&)3?O."DP:@?235LJK,
M<YV/D$E5QOM<Q0/$1RFX(BK)H>,U<+[M+D;2D#&.AGU^,YJL%#,,RR4BA7"=
MY$0L*&#()=/Z,).JB+M$IE(0GL)O3-CI-F"8,YK!B DB$D8X3+*,)9@.5FU1
MMH4T()48,*>*SC> =MO#!A0KI5<$E<Q(C.>=_A)4!5KR;@%F1,V)H-J9K#G=
MP" I&VK)"_?85#E79&J@'RDA<Z;A+R%OL?X%]5^:#_=99\B<TUVDN50I:K(N
M2((Z[;O!/7=.LXK7_D,*'-RRU.1H<E_5L&N<%R1-$>-]S:W9*&H7(J=66'VO
M:^F/AG1GJ #>O IJ]VM_>%GPQJ0/.W^Q TL(WR9M9/$X7MT[>1#L&(P8![_=
MGFS%<942I!&WE-W36-'/*Z:HO8/:,D)O]]#KU,D)X&YXW7IZLF?1'>GWA-]2
MR7O7>1/85=AGC1_JZ>X>T<N'GU848+BR./G.<;[?/'W6?+]G7/7V\XR<"12U
M9:6&**V&,('*Q40YPAT?"+/:6BBJ[>@;UDPX!W2CR@H0&@KD@FZ47ME>F! P
M926TE3U\M>+E_&5!*P'6!YK5_&>#\<,N];9G_[;B!Y?KF?:XZQZWB^?8%!]O
MP@9.JX/PQ)IWCH,^V_A5)Y[@T-ED>AY.G;-)'$^N4&:+-6C)6;IM1Z=[7,B6
M;AV<GR?*\=K_7?-^P,(_VZY]VX!''CYRF+];8';\_S$GM/S?TO\;4$L! A0#
M%     @ %(JF6A8-D%,#&   $#,! !$              ( !     &-X9&\M
M,C R-3 S,S$N>'-D4$L! A0#%     @ %(JF6E=#IVA'$P  "@,! !4
M         ( !,A@  &-X9&\M,C R-3 S,S%?8V%L+GAM;%!+ 0(4 Q0    (
M !2*IEIR;?+OCR8  )%E @ 5              "  :PK  !C>&1O+3(P,C4P
M,S,Q7V1E9BYX;6Q02P$"% ,4    "  4BJ9:[_;P6^EW  "D5@8 %0
M        @ %N4@  8WAD;RTR,#(U,#,S,5]L86(N>&UL4$L! A0#%     @
M%(JF6HLI)[8E7@  !3X% !4              ( !BLH  &-X9&\M,C R-3 S
M,S%?<')E+GAM;%!+ 0(4 Q0    ( !2*IEH;XY#Y>U4! -<;%  ,
M      "  >(H 0!C>&1O7S$P<2YH=&U02P$"% ,4    "  4BJ9:[97, DD:
M  #F&@  $0              @ &'?@( 8WAD;U\Q,'%I;6<V.2YJ<&=02P$"
M% ,4    "  4BJ9:/8 Z/4L'   3)0  #@              @ '_F ( 8WAD
M;U]E>#,Q,2YH=&U02P$"% ,4    "  4BJ9:*R89-E,'  !W)0  #@
M        @ %VH ( 8WAD;U]E>#,Q,BYH=&U02P$"% ,4    "  4BJ9:O%R=
M"]4#  #<#   #@              @ 'UIP( 8WAD;U]E>#,R,2YH=&U02P$"
M% ,4    "  4BJ9:7R80*MH#   7#0  #@              @ 'VJP( 8WAD
A;U]E>#,R,BYH=&U02P4&      L "P"T @  _*\"

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>103
<FILENAME>cxdo_10q_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2024"
  xmlns:cxdo="http://cxdo.com/20250331"
  xmlns:dei="http://xbrl.sec.gov/dei/2024"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2024"
  xmlns:us-gaap="http://fasb.org/us-gaap/2024"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="cxdo-20250331.xsd" xlink:type="simple"/>
    <context id="From2025-01-01to2025-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">cxdo:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_InternationalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">cxdo:InternationalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_country_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_country_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_ProductMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_ProductMember_cxdo_SoftwareSolutionSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_ProductMember_cxdo_CloudTelecommunicationsServiceSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_SoftwareDevelopmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_SoftwareSolutionSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_CloudTelecommunicationsServiceSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_ServiceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_ServiceMember_cxdo_SoftwareSolutionSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_ServiceMember_cxdo_CloudTelecommunicationsServiceSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_ProductMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_ProductMember_cxdo_SoftwareSolutionSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_ProductMember_cxdo_CloudTelecommunicationsServiceSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_SoftwareDevelopmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_SoftwareSolutionSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_CloudTelecommunicationsServiceSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_ServiceMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_ServiceMember_cxdo_SoftwareSolutionSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_ServiceMember_cxdo_CloudTelecommunicationsServiceSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsServiceSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_OracleMemberMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cxdo:OracleMemberMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_OracleMemberMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cxdo:OracleMemberMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-02-01to2024-02-29_cxdo_OracleMemberMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cxdo:OracleMemberMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-02-01</startDate>
            <endDate>2024-02-29</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_DecemberThirtyOneTwoThousandTwentyFourMember_cxdo_BonusPlanMember_cxdo_BoardOfDirectorsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:DecemberThirtyOneTwoThousandTwentyFourMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:BonusPlanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cxdo:BoardOfDirectorsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_OracleMemberMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cxdo:OracleMemberMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-03-31_cxdo_OracleMemberMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RelatedPartyTransactionsByRelatedPartyAxis">cxdo:OracleMemberMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_OtherOperatingLeasesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:OtherOperatingLeasesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_OtherOperatingLeasesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:OtherOperatingLeasesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_MichiganLasVegasMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:MichiganLasVegasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_MichiganLasVegasMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:MichiganLasVegasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_OverlandParkKansasMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:OverlandParkKansasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_OverlandParkKansasMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:OverlandParkKansasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_SanDiegoCaliforniaMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:SanDiegoCaliforniaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_SanDiegoCaliforniaMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:SanDiegoCaliforniaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_RestonVirginiaMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:RestonVirginiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_RestonVirginiaMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:RestonVirginiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_TempeArizoneMember_cxdo_OctoberTwoThousandTwentyFourMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:OctoberTwoThousandTwentyFourMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:TempeArizoneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_TempeArizoneMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:TempeArizoneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember_cxdo_OctoberTwoThousandTwentyFourMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:OctoberTwoThousandTwentyFourMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:TempeArizoneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:TempeArizoneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_BottomMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:BottomMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_srt_ScenarioPreviouslyReportedMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:ScenarioPreviouslyReportedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:CarryingReportedAmountsFairValueDisclosureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:EstimateOfFairValueFairValueDisclosuresMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:CarryingReportedAmountsFairValueDisclosureMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:EstimateOfFairValueFairValueDisclosuresMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:NovemberOneTwoThousandTwentyTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cxdo:AllegiantNetworksBusinessAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:NovemberOneTwoThousandTwentyTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cxdo:AllegiantNetworksBusinessAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:OnFebruaryTwentySevenTwoThousandTwentyThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:OnFebruaryTwentySevenTwoThousandTwentyThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="AsOf2024-12-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:NovemberOneTwoThousandTwentyTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cxdo:AllegiantNetworksBusinessAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2022-11-01_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:NovemberOneTwoThousandTwentyTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cxdo:AllegiantNetworksBusinessAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-11-01</instant>
        </period>
    </context>
    <context id="From2022-10-30to2022-11-01_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:NovemberOneTwoThousandTwentyTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cxdo:AllegiantNetworksBusinessAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-10-30</startDate>
            <endDate>2022-11-01</endDate>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:NovemberOneTwoThousandTwentyTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cxdo:AllegiantNetworksBusinessAcquisitionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_GeneralAndAdministrativeExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_GeneralAndAdministrativeExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:GeneralAndAdministrativeExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_SellingAndMarketingExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_SellingAndMarketingExpenseMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingAndMarketingExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">cxdo:SoftwareSolutionsRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsRevenueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">cxdo:SoftwareSolutionsRevenueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_TotalacquiredintangibleassetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:TotalacquiredintangibleassetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_cxdo_TotalacquiredintangibleassetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:TotalacquiredintangibleassetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_TrademarkAndTradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:TrademarkAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_cxdo_TrademarkAndTradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:TrademarkAndTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_DevelopedTechnologiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:DevelopedTechnologiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_cxdo_DevelopedTechnologiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:DevelopedTechnologiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_CustomerRelationshipsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_CustomerRelationshipsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:CustomerRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_VehiclesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_VehiclesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_cxdo_InternalUseComputerSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:InternalUseComputerSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_InternalUseComputerSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:InternalUseComputerSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_cxdo_ComputerSoftwareIntangibleAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:ComputerSoftwareIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_ComputerSoftwareIntangibleAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:ComputerSoftwareIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_OfficeEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_OfficeEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_PriorMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:PriorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_TwoThousendTwentyFourMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_TwoThousendTwentyFiveMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyFiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_TwoThousendTwentyOneMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_TwoThousendTwentyTwoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_TwoThousendTwentyThreeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyThreeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cxdo:UnitedStateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_PriorMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cxdo:UnitedStateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:PriorMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyFourMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cxdo:UnitedStateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyFourMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyFiveMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cxdo:UnitedStateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyFiveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyOneMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cxdo:UnitedStateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyOneMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyTwoMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cxdo:UnitedStateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardDateAxis">cxdo:TwoThousendTwentyTwoMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancingReceivablesPeriodPastDueAxis">us-gaap:FinancingReceivablesEqualToGreaterThan90DaysPastDueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancingReceivablesPeriodPastDueAxis">us-gaap:FinancingReceivablesEqualToGreaterThan90DaysPastDueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_FinancingReceivables60To89DaysPastDueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancingReceivablesPeriodPastDueAxis">us-gaap:FinancingReceivables60To89DaysPastDueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_FinancingReceivables60To89DaysPastDueMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancingReceivablesPeriodPastDueAxis">us-gaap:FinancingReceivables60To89DaysPastDueMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_AllowanceForCreditLossesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditLossStatusAxis">cxdo:AllowanceForCreditLossesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_AllowanceForCreditLossesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditLossStatusAxis">cxdo:AllowanceForCreditLossesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="AsOf2024-12-31_cxdo_AllowanceForCreditLossesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditLossStatusAxis">cxdo:AllowanceForCreditLossesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_StockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_StockOptionMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:StockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_SoftwareSolutionsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_DesktopDevicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsegmentsAxis">cxdo:DesktopDevicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsegmentsAxis">cxdo:TelecommunicationsServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_ContractAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:ContractAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_ContractLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:ContractLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-12-31_cxdo_ContractLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:ContractLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-12-31_cxdo_ContractAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:ContractAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:ReportableSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:ReportableSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:SoftwareSolutionsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">cxdo:CloudTelecommunicationsSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_OtherCountriesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GeographicDistributionAxis">cxdo:OtherCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_TrademarkTradeNamesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:TrademarkTradeNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_DevelopedTechnologiesMember_cxdo_TopMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:DevelopedTechnologiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:TopMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_DevelopedTechnologiesMember_cxdo_BottomMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cxdo:DevelopedTechnologiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:BottomMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_CustomerRelationshipMember_cxdo_TopMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:TopMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:CustomerRelationshipMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_CustomerRelationshipMember_cxdo_BottomMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cxdo:BottomMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:CustomerRelationshipMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_VehiclesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_LeaseholdImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:LeaseholdImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_FurnitureAndFixturesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_InternalUseComputerSoftwareMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:InternalUseComputerSoftwareMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_cxdo_ComputerSoftwareIntangibleAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cxdo:ComputerSoftwareIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_OfficeEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:OfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="From2025-01-01to2025-03-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2024-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2024-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-03-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-03-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="AsOf2024-03-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="AsOf2023-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="AsOf2023-12-31_us-gaap_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="AsOf2023-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="AsOf2023-12-31_us-gaap_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="AsOf2023-12-31_us-gaap_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="From2024-01-01to2024-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="AsOf2024-12-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="AsOf2025-03-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="AsOf2025-04-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001075736</identifier>
        </entity>
        <period>
            <instant>2025-04-30</instant>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Shares">
        <measure>shares</measure>
    </unit>
    <unit id="USDPShares">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="Pure">
        <measure>pure</measure>
    </unit>
    <dei:EntityCentralIndexKey contextRef="From2025-01-01to2025-03-31" id="ixv-14311">0001075736</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag contextRef="From2025-01-01to2025-03-31" id="ixv-14312">false</dei:AmendmentFlag>
    <dei:CurrentFiscalYearEndDate contextRef="From2025-01-01to2025-03-31" id="ixv-14313">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalPeriodFocus contextRef="From2025-01-01to2025-03-31" id="ixv-14314">Q1</dei:DocumentFiscalPeriodFocus>
    <dei:DocumentFiscalYearFocus contextRef="From2025-01-01to2025-03-31" id="ixv-14315">2025</dei:DocumentFiscalYearFocus>
    <dei:Security12bTitle contextRef="From2025-01-01to2025-03-31" id="ixv-14316">Common Stock, par value $0.001 per share</dei:Security12bTitle>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="AsOf2024-12-31"
      decimals="INF"
      id="ixv-14317"
      unitRef="USDPShares">0.001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="AsOf2024-12-31"
      decimals="0"
      id="ixv-14318"
      unitRef="Shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="AsOf2024-12-31"
      decimals="0"
      id="ixv-14319"
      unitRef="Shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="AsOf2025-03-31"
      decimals="0"
      id="ixv-14320"
      unitRef="Shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="AsOf2024-12-31"
      decimals="INF"
      id="ixv-14321"
      unitRef="USDPShares">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="AsOf2024-12-31"
      decimals="0"
      id="ixv-14322"
      unitRef="Shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="AsOf2024-12-31"
      decimals="0"
      id="ixv-14323"
      unitRef="Shares">27621557</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="AsOf2025-03-31"
      decimals="0"
      id="ixv-14324"
      unitRef="Shares">28990386</us-gaap:CommonStockSharesOutstanding>
    <cxdo:AccountsReceivableConcentrationRiskPercentage
      contextRef="From2024-01-01to2024-12-31"
      decimals="INF"
      id="ixv-14325"
      unitRef="Pure">0.1</cxdo:AccountsReceivableConcentrationRiskPercentage>
    <cxdo:RevenueConcentrationRiskPercentage
      contextRef="From2024-01-01to2024-03-31"
      decimals="INF"
      id="ixv-14326"
      unitRef="Pure">0.1</cxdo:RevenueConcentrationRiskPercentage>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2024-12-31_us-gaap_CustomerRelationshipsMember"
      decimals="0"
      id="ixv-14327"
      unitRef="USD">26073000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <cxdo:GoodwillBeginningBalance
      contextRef="AsOf2024-12-31"
      decimals="0"
      id="ixv-14328"
      unitRef="USD">9454000</cxdo:GoodwillBeginningBalance>
    <cxdo:DeferredTaxAssetValuationAllowance
      contextRef="AsOf2024-12-31"
      decimals="0"
      id="ixv-14329"
      unitRef="USD">5417000</cxdo:DeferredTaxAssetValuationAllowance>
    <cxdo:DeferredTaxesRealizableAmount
      contextRef="AsOf2024-12-31"
      decimals="0"
      id="ixv-14330"
      unitRef="USD">5417000</cxdo:DeferredTaxesRealizableAmount>
    <dei:DocumentType contextRef="From2025-01-01to2025-03-31" id="ixv-15588">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport contextRef="From2025-01-01to2025-03-31" id="ixv-15589">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate contextRef="From2025-01-01to2025-03-31" id="ixv-15590">2025-03-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport contextRef="From2025-01-01to2025-03-31" id="ixv-15591">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="From2025-01-01to2025-03-31" id="ixv-15592">001-32277</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="From2025-01-01to2025-03-31" id="ixv-15593">Crexendo, Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="From2025-01-01to2025-03-31" id="ixv-15594">NV</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="From2025-01-01to2025-03-31" id="ixv-15595">87-0591719</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="From2025-01-01to2025-03-31" id="ixv-15596">1225 West Washington Street</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2 contextRef="From2025-01-01to2025-03-31" id="ixv-15597">Suite 213</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown contextRef="From2025-01-01to2025-03-31" id="ixv-15598">Tempe</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="From2025-01-01to2025-03-31" id="ixv-15599">AZ</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="From2025-01-01to2025-03-31" id="ixv-15600">85288</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="From2025-01-01to2025-03-31" id="ixv-15601">602</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="From2025-01-01to2025-03-31" id="ixv-15602">714-8500</dei:LocalPhoneNumber>
    <dei:EntityCurrentReportingStatus contextRef="From2025-01-01to2025-03-31" id="ixv-15603">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="From2025-01-01to2025-03-31" id="ixv-15604">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="From2025-01-01to2025-03-31" id="ixv-15605">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="From2025-01-01to2025-03-31" id="ixv-15606">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="From2025-01-01to2025-03-31" id="ixv-15607">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany contextRef="From2025-01-01to2025-03-31" id="ixv-15608">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="AsOf2025-04-30"
      decimals="INF"
      id="ixv-15609"
      unitRef="Shares">29030543</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2055"
      unitRef="USD">21207000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2056"
      unitRef="USD">18193000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_506"
      unitRef="USD">165000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_505"
      unitRef="USD">146000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2057"
      unitRef="USD">4060000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2058"
      unitRef="USD">4352000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2059"
      unitRef="USD">576000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2060"
      unitRef="USD">393000</us-gaap:InventoryNet>
    <cxdo:AllowanceForEquipmentFinancingReceivable
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_508"
      unitRef="USD">31000</cxdo:AllowanceForEquipmentFinancingReceivable>
    <cxdo:AllowanceForEquipmentFinancingReceivable
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_507"
      unitRef="USD">69000</cxdo:AllowanceForEquipmentFinancingReceivable>
    <cxdo:EquipmentFinancingReceivables
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2061"
      unitRef="USD">1138000</cxdo:EquipmentFinancingReceivables>
    <cxdo:EquipmentFinancingReceivables
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2062"
      unitRef="USD">1049000</cxdo:EquipmentFinancingReceivables>
    <us-gaap:CapitalizedContractCostNet
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2063"
      unitRef="USD">2108000</us-gaap:CapitalizedContractCostNet>
    <us-gaap:CapitalizedContractCostNet
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2064"
      unitRef="USD">1931000</us-gaap:CapitalizedContractCostNet>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2065"
      unitRef="USD">993000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2066"
      unitRef="USD">876000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:IncomeTaxReceivable
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2067"
      unitRef="USD">42000</us-gaap:IncomeTaxReceivable>
    <us-gaap:IncomeTaxReceivable
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2068"
      unitRef="USD">75000</us-gaap:IncomeTaxReceivable>
    <us-gaap:OtherAssetsCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2069"
      unitRef="USD">25000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2070"
      unitRef="USD">13000</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2071"
      unitRef="USD">30149000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2072"
      unitRef="USD">26882000</us-gaap:AssetsCurrent>
    <cxdo:AllowanceForContractAssets
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_510"
      unitRef="USD">122000</cxdo:AllowanceForContractAssets>
    <cxdo:AllowanceForContractAssets
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_509"
      unitRef="USD">127000</cxdo:AllowanceForContractAssets>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2073"
      unitRef="USD">419000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <us-gaap:ContractWithCustomerAssetNetNoncurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2074"
      unitRef="USD">406000</us-gaap:ContractWithCustomerAssetNetNoncurrent>
    <cxdo:AllowanceForLongTermEquipmentFinancingReceivable
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_512"
      unitRef="USD">69000</cxdo:AllowanceForLongTermEquipmentFinancingReceivable>
    <cxdo:AllowanceForLongTermEquipmentFinancingReceivable
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_511"
      unitRef="USD">157000</cxdo:AllowanceForLongTermEquipmentFinancingReceivable>
    <cxdo:LongTermEquipmentFinancingReceivables
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2075"
      unitRef="USD">2549000</cxdo:LongTermEquipmentFinancingReceivables>
    <cxdo:LongTermEquipmentFinancingReceivables
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2076"
      unitRef="USD">2397000</cxdo:LongTermEquipmentFinancingReceivables>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2077"
      unitRef="USD">329000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2078"
      unitRef="USD">394000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2079"
      unitRef="USD">1334000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2080"
      unitRef="USD">1491000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2081"
      unitRef="USD">19822000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2082"
      unitRef="USD">20528000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:Goodwill
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2083"
      unitRef="USD">9454000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2084"
      unitRef="USD">9454000</us-gaap:Goodwill>
    <us-gaap:CapitalizedContractCostNetNoncurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2085"
      unitRef="USD">2894000</us-gaap:CapitalizedContractCostNetNoncurrent>
    <us-gaap:CapitalizedContractCostNetNoncurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2086"
      unitRef="USD">2879000</us-gaap:CapitalizedContractCostNetNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2087"
      unitRef="USD">499000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2088"
      unitRef="USD">507000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2089"
      unitRef="USD">67449000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2090"
      unitRef="USD">64938000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2093"
      unitRef="USD">861000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2094"
      unitRef="USD">1003000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2095"
      unitRef="USD">6439000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2096"
      unitRef="USD">6992000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2097"
      unitRef="USD">2000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2098"
      unitRef="USD">21000</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:NotesPayableCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2099"
      unitRef="USD">475000</us-gaap:NotesPayableCurrent>
    <us-gaap:NotesPayableCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2100"
      unitRef="USD">478000</us-gaap:NotesPayableCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2101"
      unitRef="USD">467000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2102"
      unitRef="USD">481000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:TaxesPayableCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2103"
      unitRef="USD">40000</us-gaap:TaxesPayableCurrent>
    <us-gaap:TaxesPayableCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2104"
      unitRef="USD">40000</us-gaap:TaxesPayableCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2105"
      unitRef="USD">2833000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2106"
      unitRef="USD">3079000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2107"
      unitRef="USD">11117000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2108"
      unitRef="USD">12094000</us-gaap:LiabilitiesCurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2109"
      unitRef="USD">205000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:ContractWithCustomerLiabilityNoncurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2110"
      unitRef="USD">293000</us-gaap:ContractWithCustomerLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2111"
      unitRef="USD">2000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2112"
      unitRef="USD">2000</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:LongTermNotesPayable
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2113"
      unitRef="USD">0</us-gaap:LongTermNotesPayable>
    <us-gaap:LongTermNotesPayable
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2114"
      unitRef="USD">114000</us-gaap:LongTermNotesPayable>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2115"
      unitRef="USD">903000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2116"
      unitRef="USD">1022000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:Liabilities
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2117"
      unitRef="USD">12227000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2118"
      unitRef="USD">13525000</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="AsOf2025-03-31"
      decimals="INF"
      id="fid_513"
      unitRef="USDPShares">0.001</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="AsOf2025-03-31"
      decimals="0"
      id="fid_515"
      unitRef="Shares">5000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockValue
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2120"
      unitRef="USD">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2121"
      unitRef="USD">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="AsOf2025-03-31"
      decimals="INF"
      id="fid_519"
      unitRef="USDPShares">0.001</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="AsOf2025-03-31"
      decimals="0"
      id="fid_521"
      unitRef="Shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="AsOf2025-03-31"
      decimals="0"
      id="fid_524"
      unitRef="Shares">28990386</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="AsOf2024-12-31"
      decimals="0"
      id="fid_523"
      unitRef="Shares">27621557</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2122"
      unitRef="USD">29000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2123"
      unitRef="USD">28000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2124"
      unitRef="USD">140639000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2125"
      unitRef="USD">138015000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2126"
      unitRef="USD">-85619000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2127"
      unitRef="USD">-86790000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2128"
      unitRef="USD">173000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2129"
      unitRef="USD">160000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2130"
      unitRef="USD">55222000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2131"
      unitRef="USD">51413000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2132"
      unitRef="USD">67449000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2133"
      unitRef="USD">64938000</us-gaap:LiabilitiesAndStockholdersEquity>
    <cxdo:ServiceRevenue
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2134"
      unitRef="USD">8182000</cxdo:ServiceRevenue>
    <cxdo:ServiceRevenue
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2135"
      unitRef="USD">7845000</cxdo:ServiceRevenue>
    <cxdo:SoftwareSolutionsRevenue
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2136"
      unitRef="USD">6868000</cxdo:SoftwareSolutionsRevenue>
    <cxdo:SoftwareSolutionsRevenue
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2137"
      unitRef="USD">5146000</cxdo:SoftwareSolutionsRevenue>
    <cxdo:ProductRevenue
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2138"
      unitRef="USD">1007000</cxdo:ProductRevenue>
    <cxdo:ProductRevenue
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2139"
      unitRef="USD">1295000</cxdo:ProductRevenue>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2140"
      unitRef="USD">16057000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2141"
      unitRef="USD">14286000</us-gaap:Revenues>
    <cxdo:CostOfServiceRevenue
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2143"
      unitRef="USD">3487000</cxdo:CostOfServiceRevenue>
    <cxdo:CostOfServiceRevenue
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2144"
      unitRef="USD">3109000</cxdo:CostOfServiceRevenue>
    <cxdo:CostOfSoftwareSolutionsRevenue
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2145"
      unitRef="USD">1490000</cxdo:CostOfSoftwareSolutionsRevenue>
    <cxdo:CostOfSoftwareSolutionsRevenue
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2146"
      unitRef="USD">1392000</cxdo:CostOfSoftwareSolutionsRevenue>
    <cxdo:CostOfProductRevenue
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2147"
      unitRef="USD">599000</cxdo:CostOfProductRevenue>
    <cxdo:CostOfProductRevenue
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2148"
      unitRef="USD">730000</cxdo:CostOfProductRevenue>
    <us-gaap:SellingAndMarketingExpense
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2149"
      unitRef="USD">4289000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2150"
      unitRef="USD">4027000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2151"
      unitRef="USD">3519000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2152"
      unitRef="USD">3296000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2153"
      unitRef="USD">1523000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2154"
      unitRef="USD">1249000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:OperatingExpenses
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2155"
      unitRef="USD">14907000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2156"
      unitRef="USD">13803000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2157"
      unitRef="USD">1150000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2158"
      unitRef="USD">483000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeOther
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2160"
      unitRef="USD">84000</us-gaap:InterestIncomeOther>
    <us-gaap:InterestIncomeOther
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2161"
      unitRef="USD">5000</us-gaap:InterestIncomeOther>
    <us-gaap:InterestExpenseOther
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2162"
      unitRef="USD">9000</us-gaap:InterestExpenseOther>
    <us-gaap:InterestExpenseOther
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2163"
      unitRef="USD">13000</us-gaap:InterestExpenseOther>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2164"
      unitRef="USD">-10000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2165"
      unitRef="USD">-14000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2166"
      unitRef="USD">65000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2167"
      unitRef="USD">-22000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2168"
      unitRef="USD">1215000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2169"
      unitRef="USD">461000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2170"
      unitRef="USD">44000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2171"
      unitRef="USD">27000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2172"
      unitRef="USD">1171000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2173"
      unitRef="USD">434000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2025-01-01to2025-03-31"
      decimals="INF"
      id="fid_2175"
      unitRef="USDPShares">0.04</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2024-01-01to2024-03-31"
      decimals="INF"
      id="fid_2176"
      unitRef="USDPShares">0.02</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2025-01-01to2025-03-31"
      decimals="INF"
      id="fid_2177"
      unitRef="USDPShares">0.04</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2024-01-01to2024-03-31"
      decimals="INF"
      id="fid_2178"
      unitRef="USDPShares">0.01</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2025-01-01to2025-03-31"
      decimals="0"
      id="fid_2180"
      unitRef="Shares">28024280</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2024-01-01to2024-03-31"
      decimals="0"
      id="fid_2181"
      unitRef="Shares">26314903</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2025-01-01to2025-03-31"
      decimals="0"
      id="fid_2182"
      unitRef="Shares">31092775</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2024-01-01to2024-03-31"
      decimals="0"
      id="fid_2183"
      unitRef="Shares">30142100</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2184"
      unitRef="USD">1171000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2185"
      unitRef="USD">434000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2187"
      unitRef="USD">13000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2188"
      unitRef="USD">1000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2189"
      unitRef="USD">13000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTax
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2190"
      unitRef="USD">1000</us-gaap:OtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2191"
      unitRef="USD">1184000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2192"
      unitRef="USD">435000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:SharesIssued
      contextRef="AsOf2024-12-31_us-gaap_CommonStockMember"
      decimals="0"
      id="fid_2259"
      unitRef="Shares">27621557</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-12-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2260"
      unitRef="USD">28000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2261"
      unitRef="USD">138015000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2262"
      unitRef="USD">160000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-12-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2263"
      unitRef="USD">-86790000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2264"
      unitRef="USD">51413000</us-gaap:StockholdersEquity>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2265"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2266"
      unitRef="USD">726000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2267"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2268"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2269"
      unitRef="USD">726000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <cxdo:VestingOfRestrictedStockUnitsShares
      contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember"
      decimals="0"
      id="fid_2270"
      unitRef="Shares">22977</cxdo:VestingOfRestrictedStockUnitsShares>
    <cxdo:VestingOfRestrictedStockUnitsAmount
      contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2271"
      unitRef="USD">0</cxdo:VestingOfRestrictedStockUnitsAmount>
    <cxdo:VestingOfRestrictedStockUnitsAmount
      contextRef="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2272"
      unitRef="USD">0</cxdo:VestingOfRestrictedStockUnitsAmount>
    <cxdo:VestingOfRestrictedStockUnitsAmount
      contextRef="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2273"
      unitRef="USD">0</cxdo:VestingOfRestrictedStockUnitsAmount>
    <cxdo:VestingOfRestrictedStockUnitsAmount
      contextRef="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2274"
      unitRef="USD">0</cxdo:VestingOfRestrictedStockUnitsAmount>
    <cxdo:VestingOfRestrictedStockUnitsAmount
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2275"
      unitRef="USD">0</cxdo:VestingOfRestrictedStockUnitsAmount>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2276"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2277"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2278"
      unitRef="USD">13000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2279"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2280"
      unitRef="USD">13000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember"
      decimals="0"
      id="fid_2281"
      unitRef="Shares">1345852</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2282"
      unitRef="USD">1000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2283"
      unitRef="USD">1978000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2284"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2285"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2286"
      unitRef="USD">1979000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits
      contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2287"
      unitRef="USD">0</cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits>
    <cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits
      contextRef="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2288"
      unitRef="USD">-80000</cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits>
    <cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits
      contextRef="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2289"
      unitRef="USD">0</cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits>
    <cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits
      contextRef="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2290"
      unitRef="USD">0</cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits>
    <cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2291"
      unitRef="USD">-80000</cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-01-01to2025-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2292"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-01-01to2025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2293"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-01-01to2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2294"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-01-01to2025-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2295"
      unitRef="USD">1171000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2296"
      unitRef="USD">1171000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesIssued
      contextRef="AsOf2025-03-31_us-gaap_CommonStockMember"
      decimals="0"
      id="fid_2297"
      unitRef="Shares">28990386</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2298"
      unitRef="USD">29000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2299"
      unitRef="USD">140639000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2300"
      unitRef="USD">173000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2301"
      unitRef="USD">-85619000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2302"
      unitRef="USD">55222000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="AsOf2023-12-31_us-gaap_CommonStockMember"
      decimals="0"
      id="fid_2303"
      unitRef="Shares">26130218</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2023-12-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2304"
      unitRef="USD">26000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2023-12-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2305"
      unitRef="USD">132888000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2023-12-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2306"
      unitRef="USD">166000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2023-12-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2307"
      unitRef="USD">-88467000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2023-12-31"
      decimals="-3"
      id="fid_2308"
      unitRef="USD">44613000</us-gaap:StockholdersEquity>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2024-01-01to2024-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2309"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2024-01-01to2024-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2310"
      unitRef="USD">728000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2024-01-01to2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2311"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2024-01-01to2024-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2312"
      unitRef="USD">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2313"
      unitRef="USD">728000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2024-01-01to2024-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2314"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2024-01-01to2024-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2315"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2024-01-01to2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2316"
      unitRef="USD">1000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2024-01-01to2024-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2317"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2318"
      unitRef="USD">1000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="From2024-01-01to2024-03-31_us-gaap_CommonStockMember"
      decimals="0"
      id="fid_2319"
      unitRef="Shares">497804</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2024-01-01to2024-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2320"
      unitRef="USD">1000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2024-01-01to2024-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2321"
      unitRef="USD">1048000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2024-01-01to2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2322"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2024-01-01to2024-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2323"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2324"
      unitRef="USD">1049000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits
      contextRef="From2024-01-01to2024-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2325"
      unitRef="USD">0</cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits>
    <cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits
      contextRef="From2024-01-01to2024-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2326"
      unitRef="USD">-60000</cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits>
    <cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits
      contextRef="From2024-01-01to2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2327"
      unitRef="USD">0</cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits>
    <cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits
      contextRef="From2024-01-01to2024-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2328"
      unitRef="USD">0</cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits>
    <cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2329"
      unitRef="USD">-60000</cxdo:TaxesPaidOnTheNetSettlementOfStockOptionsAndRestrictedStockUnits>
    <us-gaap:NetIncomeLoss
      contextRef="From2024-01-01to2024-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2330"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2024-01-01to2024-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2331"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2024-01-01to2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2332"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2024-01-01to2024-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2333"
      unitRef="USD">434000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2334"
      unitRef="USD">434000</us-gaap:NetIncomeLoss>
    <us-gaap:SharesIssued
      contextRef="AsOf2024-03-31_us-gaap_CommonStockMember"
      decimals="0"
      id="fid_2335"
      unitRef="Shares">26628022</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-03-31_us-gaap_CommonStockMember"
      decimals="-3"
      id="fid_2336"
      unitRef="USD">27000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-03-31_us-gaap_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="fid_2337"
      unitRef="USD">134604000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-03-31_us-gaap_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="fid_2338"
      unitRef="USD">167000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-03-31_us-gaap_RetainedEarningsMember"
      decimals="-3"
      id="fid_2339"
      unitRef="USD">-88033000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="AsOf2024-03-31"
      decimals="-3"
      id="fid_2340"
      unitRef="USD">46765000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2194"
      unitRef="USD">1171000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2195"
      unitRef="USD">434000</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationAndAmortization
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2196"
      unitRef="USD">771000</us-gaap:DepreciationAndAmortization>
    <us-gaap:DepreciationAndAmortization
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2197"
      unitRef="USD">840000</us-gaap:DepreciationAndAmortization>
    <cxdo:AllowanceForCreditLosses
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2198"
      unitRef="USD">-112000</cxdo:AllowanceForCreditLosses>
    <cxdo:AllowanceForCreditLosses
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2199"
      unitRef="USD">14000</cxdo:AllowanceForCreditLosses>
    <us-gaap:ShareBasedCompensation
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2200"
      unitRef="USD">726000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2201"
      unitRef="USD">728000</us-gaap:ShareBasedCompensation>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2202"
      unitRef="USD">-24000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2203"
      unitRef="USD">2000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2205"
      unitRef="USD">-273000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2206"
      unitRef="USD">749000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2207"
      unitRef="USD">8000</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <us-gaap:IncreaseDecreaseInContractWithCustomerAsset
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2208"
      unitRef="USD">-25000</us-gaap:IncreaseDecreaseInContractWithCustomerAsset>
    <cxdo:IncreaseDecreaseInEquipmentFinancingReceivables
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2209"
      unitRef="USD">115000</cxdo:IncreaseDecreaseInEquipmentFinancingReceivables>
    <cxdo:IncreaseDecreaseInEquipmentFinancingReceivables
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2210"
      unitRef="USD">137000</cxdo:IncreaseDecreaseInEquipmentFinancingReceivables>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2211"
      unitRef="USD">183000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2212"
      unitRef="USD">-1000</us-gaap:IncreaseDecreaseInInventories>
    <cxdo:IncreaseDecreaseInContractCosts
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2213"
      unitRef="USD">192000</cxdo:IncreaseDecreaseInContractCosts>
    <cxdo:IncreaseDecreaseInContractCosts
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2214"
      unitRef="USD">379000</cxdo:IncreaseDecreaseInContractCosts>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2215"
      unitRef="USD">117000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2216"
      unitRef="USD">391000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2217"
      unitRef="USD">-33000</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesReceivable
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2218"
      unitRef="USD">0</us-gaap:IncreaseDecreaseInIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2219"
      unitRef="USD">4000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2220"
      unitRef="USD">-14000</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2221"
      unitRef="USD">-695000</us-gaap:IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2222"
      unitRef="USD">-1099000</us-gaap:IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2223"
      unitRef="USD">0</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2224"
      unitRef="USD">27000</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2225"
      unitRef="USD">-334000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2226"
      unitRef="USD">508000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2227"
      unitRef="USD">1238000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2228"
      unitRef="USD">-166000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2230"
      unitRef="USD">0</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2231"
      unitRef="USD">0</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2232"
      unitRef="USD">0</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2233"
      unitRef="USD">0</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2235"
      unitRef="USD">19000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2236"
      unitRef="USD">18000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2237"
      unitRef="USD">117000</us-gaap:RepaymentsOfNotesPayable>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2238"
      unitRef="USD">112000</us-gaap:RepaymentsOfNotesPayable>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2239"
      unitRef="USD">1979000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2240"
      unitRef="USD">1049000</us-gaap:ProceedsFromStockOptionsExercised>
    <cxdo:TaxesPaidOnTheNetSettlementOfStockOptionAndRsus
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2241"
      unitRef="USD">80000</cxdo:TaxesPaidOnTheNetSettlementOfStockOptionAndRsus>
    <cxdo:TaxesPaidOnTheNetSettlementOfStockOptionAndRsus
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2242"
      unitRef="USD">60000</cxdo:TaxesPaidOnTheNetSettlementOfStockOptionAndRsus>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2243"
      unitRef="USD">1763000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2244"
      unitRef="USD">859000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2245"
      unitRef="USD">13000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2246"
      unitRef="USD">1000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2247"
      unitRef="USD">3014000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2248"
      unitRef="USD">694000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2249"
      unitRef="USD">18193000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="AsOf2023-12-31"
      decimals="-3"
      id="fid_2250"
      unitRef="USD">10347000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2251"
      unitRef="USD">21207000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="AsOf2024-03-31"
      decimals="-3"
      id="fid_2252"
      unitRef="USD">11041000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2255"
      unitRef="USD">-10000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2256"
      unitRef="USD">0</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2257"
      unitRef="USD">8000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_2258"
      unitRef="USD">13000</us-gaap:InterestPaidNet>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_757">&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;strong&gt;1. Significant Accounting Policies&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Description of Business &#x2013;&lt;/strong&gt;Crexendo, Inc. is incorporated in the state of Nevada. As used hereafter in the notes to condensed consolidated financial statements, we refer to Crexendo, Inc. and its wholly owned subsidiaries, as &#x201c;we,&#x201d; &#x201c;us,&#x201d; or &#x201c;our Company.&#x201d; Crexendo, Inc. is an award-winning software technology company that is a premier provider of cloud communication platform software and unified communications as a service (UCaaS) offerings, including voice, video, contact center, and managed IT services tailored to businesses of all sizes. Our cloud communications software solutions currently support over six million end users globally, through an extensive network of over 235 cloud communication platform software subscribers and our direct retail offering. The Company has two operating segments, which consist of Cloud Telecommunications and Software Solutions.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Basis of Presentation&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;The condensed consolidated financial statements include the accounts and operations of Crexendo, Inc. and its wholly owned subsidiaries, which include Allegiant Networks, LLC, Crexendo Business Solutions, Inc., NetSapiens, LLC, Crexendo Business Solutions of Virginia, Inc., NSHC, Inc., NetSapiens Canada, Inc., NetSapiens International Limited and Crexendo International, Inc. All intercompany account balances and transactions have been eliminated in consolidation. The accompanying unaudited interim condensed consolidated financial statements have been prepared in accordance with U.S. generally accepted accounting principles (&#x201c;US GAAP&#x201d;), consistent in all material respects with those applied in our financial statements included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2024. Because these financial statements address interim periods, they do not include all of the information and footnotes required by U.S. generally accepted accounting principles for complete financial statements. Such interim financial information is unaudited but reflects all adjustments that in the opinion of management are necessary for the fair presentation of the interim periods presented. The results of operations presented in this Quarterly Report on Form 10-Q are not necessarily indicative of the results that may be expected for the year ending December 31, 2025 or for any future periods. This Quarterly Report on Form 10-Q should be read in conjunction with the Company&#x2019;s audited financial statements and footnotes included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2024.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Foreign Currency Translation&lt;em&gt;-&lt;/em&gt;&lt;/strong&gt;The functional currency of our international subsidiaries is the local currency. We translate assets and liabilities of foreign subsidiaries, whose functional currency is their local currency, at exchange rates in effect at the balance sheet date. We translate revenue and expenses at the monthly average exchange rates. We include accumulated net translation adjustments in stockholders&#x2019; equity as a component of accumulated other comprehensive income (loss).&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Due to changes in exchange rates between reporting periods and changes in certain account balances, the foreign currency translation adjustment will change from period to period. During the three months ended March 31, 2025 and 2024, we recorded foreign currency translation gains/(losses) of $13, and $1, respectively, in our statements of comprehensive income (loss).&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Cash and Cash Equivalents&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;We consider all highly liquid, short-term investments with maturities of three months or less at the time of purchase to be cash equivalents. As of March 31, 2025 and December 31, 2024, we had cash and cash equivalents in financial institutions in excess of federally insured limits in the amount of $20,451 and $17,501 respectively.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Trade Receivables and Allowance for Credit Losses&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Trade receivables from our cloud telecommunications services and software solutions segments are recorded at invoiced amounts. Trade receivables are generally due within 30 days after the invoice date. We provide an allowance for credit losses based on historical loss experience, the age of the receivables, specific troubled accounts and other currently available information.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;The allowance for credit losses is determined based on an assessment of historical collection experience using the aging schedule method as well as consideration of current and future economic conditions. Trade receivables are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our trade receivable credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Equipment Financing Receivables and Allowance for Credit Losses&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Equipment financing receivables are comprised of sales-type leases. Sales-type leases are from financing options provided to clients for cloud telecommunications equipment (IP or cloud telephone desktop devices) and are generally due in installments over periods ranging from three to five years.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;We provide an allowance for credit losses based on historical loss experience, adverse situations that may affect a client's ability to pay, current economic conditions and outlook based on reasonable and supportable forecasts. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary. Equipment financing receivables are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our equipment financing receivable credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Contract Assets and Allowance for Credit Losses&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Contract assets primarily relate to the Company&#x2019;s rights to consideration for work completed but not billed as of the reporting date. The Company recognizes a contract asset when the Company transfers products or services to a customer and the right to consideration is conditional on something other than the passage of time. The contract assets are transferred to receivables when the rights become unconditional.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;The allowance for credit losses is determined based on an assessment of historical collection experience using the loss-rate method as well as consideration of current and future economic conditions and changes in our loss-rate trends. We utilize a five-year lookback period to establish our estimate of expected credit losses, as our contractual terms range from three to five years. Contract assets are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our contract assets credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Contract Costs&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Contract costs primarily relate to incremental commission costs paid to sales representatives and sales leadership as a result of obtaining software solutions and telecommunication service contracts which are recoverable. The Company capitalized contract costs in the amount of $5,002 and $4,810 at March 31, 2025 and December 31, 2024, respectively. Capitalized commission costs are amortized based on the transfer of goods or services to which the assets relate, which typically range from thirty-six to sixty months, and are included in selling and marketing expenses. During the three months ended March 31, 2025 and 2024, the Company amortized $822 and $500, respectively, and there was no impairment loss in relation to the costs capitalized.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Inventory&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Finished goods telecommunications equipment inventory is stated at the lower of cost or net realizable value (first-in, first-out method). In accordance with applicable accounting guidance, we regularly evaluate whether inventory is stated at the lower of cost or net realizable value. If net realizable value is less than cost, the write-down is recognized as a loss in earnings in the period in which the excess occurs.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Property and Equipment&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Depreciation and amortization expense is computed using the straight-line method in amounts sufficient to allocate the cost of depreciable assets over their estimated useful lives ranging from two to five years. The cost of leasehold improvements is amortized using the straight-line method over the shorter of the estimated useful life of the asset or the term of the related lease. Depreciable lives by asset group are as follows:&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;font-size:10pt;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Computer and office equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;2 to 5 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Computer software&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;3 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Internal-use software&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;3 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Furniture and fixtures&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;4 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Leasehold improvements&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;2 to 5 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Vehicles&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;5 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Maintenance and repairs are expensed as incurred. The cost and accumulated depreciation of property and equipment sold or otherwise retired are removed from the accounts and any related gain or loss on disposition is reflected in the statement of operations. &#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Asset Acquisitions&lt;/strong&gt;&lt;strong&gt; &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;Periodically we acquire customer relationships that we account for as an asset acquisition and record a corresponding intangible asset that is amortized over its estimated useful life. Any excess of the fair value of the purchase price over the fair value of the identifiable assets and liabilities is allocated on a relative fair value basis. No goodwill is recorded in an asset acquisition. If the fair value of the assets acquired exceeds the initial consideration paid as of the date of acquisition but includes a contingent consideration arrangement and ASC 450 and ASC 815 do not apply to contingent consideration, we analogize to the guidance in ASC 323 on recognizing contingent consideration in the acquisition of an equity method investment. The Company recognizes a liability equal to the lesser of, the maximum amount of contingent consideration or the excess of the fair value of the net assets acquired over the initial cost measurement. In accordance with the requirements of ASC 323 for equity method investments, the Company recognizes any excess of the contingent consideration issued or issuable, over the amount that was initially recognized as a liability, as an additional cost of the asset acquisition. If the amount initially recognized as a liability exceeds the contingent consideration issued or issuable, the entity recognizes that amount as a reduction of the cost of the asset acquisition.&#160; &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Business Acquisitions - &lt;/strong&gt;We account for business combinations using the acquisition method of accounting. The acquisition method of accounting requires that the purchase price, including the fair value of contingent consideration, of the acquisition be allocated to the assets acquired and liabilities assumed using the fair values determined by management as of the acquisition date. Goodwill as of the acquisition date is measured as the excess of consideration transferred over the net of the acquisition date fair values of assets acquired and the liabilities assumed. While the Company uses its best estimates and assumptions as part of the purchase price allocation process to accurately value assets acquired and liabilities assumed at the acquisition date, the Company&#x2019;s estimates are inherently uncertain and subject to refinement. As a result, during the measurement period, which may be up to one year from the acquisition date, the Company records adjustments to the assets acquired and liabilities assumed, with the corresponding offset to goodwill to the extent the Company identifies adjustments to the preliminary purchase price allocation. Upon the conclusion of the measurement period or final determination of the values of assets acquired or liabilities assumed, whichever comes first, any subsequent adjustments are recorded to the consolidated statements of operations. We include the results of all acquisitions in our consolidated financial statements from the date of acquisition. Acquisition related transaction costs, such as banking, legal, accounting and other costs incurred in connection with an acquisition, are expensed as incurred in general and administrative expenses.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Goodwill &lt;/strong&gt;&lt;strong&gt;&#x2013;&#160;&lt;/strong&gt;We have recorded goodwill related to various business acquisitions. Goodwill is recorded when the purchase price paid for an acquisition exceeds the estimated fair value of the net identified tangible and intangible assets acquired. In each of our acquisitions, the objective of the acquisition was to expand our product offerings and customer base and to achieve synergies related to cross selling opportunities, all of which contributed to the recognition of goodwill.&#160; We test goodwill for impairment on an annual basis or more frequently if events or changes in circumstances indicate that goodwill might be impaired. Items that could reasonably be expected to negatively affect key assumptions used in estimating fair value include but are not limited to: sustained decline in our stock price due to a decline in our financial performance due to the loss of key customers, loss of key personnel, emergence of new technologies or new competitors; and decline in overall market or economic conditions leading to a decline in our stock price.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;The process of estimating the fair value of goodwill is subjective and requires the Company to make estimates that may significantly impact the outcome of the analysis. A qualitative assessment considers events and circumstances such as macroeconomic conditions, industry and market conditions, cost factors and overall financial performance, as well as company specifications. If after performing this assessment, the Company concludes it is more likely than not that the fair value of the reporting unit is less than its carrying amount, then the Company must perform the quantitative test. Under the quantitative test, a goodwill impairment is identified by comparing the fair value of the reporting unit to the carrying amount, including goodwill. If the carrying amount of the reporting unit exceeds the fair value of the reporting unit, goodwill is considered impaired and an impairment charge is recognized in an amount equal to the excess, not to exceed the carrying amount of goodwill.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Impairment assessment inherently involves management judgments regarding a number of assumptions. The reporting unit fair value also depends on the future strength of the U.S. economy. New and developing competition as well as technological change could also adversely affect future fair value estimates. Due to the many variables inherent in the estimation of a reporting unit&#x2019;s fair value and the relative size of the Company&#x2019;s recorded goodwill, differences in assumptions could have a material effect on the estimated fair values. For further information, see Note 8 (Intangible Assets and Goodwill).&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Intangible Assets &#x2013; &lt;/strong&gt;Our intangible assets consist of customer relationships, developed technologies, trademarks and trade name. The intangible assets are amortized following the patterns in which the economic benefits are consumed or straight-line over the estimated useful life. We periodically review the estimated useful lives of our intangible assets and review these assets for impairment whenever events or changes in circumstances indicate that the carrying value of the assets may not be recoverable. The determination of impairment is based on estimates of future undiscounted cash flows. If an intangible asset is considered to be impaired, the amount of the impairment will be equal to the excess of the carrying value over the fair value of the asset. &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Amortizable intangible assets are amortized over the estimated useful lives as follows:&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;font-size:10pt;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Customer relationships&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;6 to 16 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Developed technologies&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;2 to 6 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Trademark and trade names&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;4 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Contract Liabilities &lt;/strong&gt;&lt;strong&gt;&#x2013;&#160;&lt;/strong&gt;Our contract liabilities consist primarily of advance consideration received from customers for telecommunications contracts. The product and monthly service revenue is recognized on completion of the implementation and the remaining activation fees are reclassified as contract liabilities.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Use of Estimates &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;In preparing the consolidated financial statements, management makes assumptions, estimates and judgments that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the dates of the consolidated financial statements and the reported amounts of net sales and expenses during the reported periods.&#160;&#160;Specific estimates and judgments include valuation of goodwill and intangible assets in connection with business acquisitions and asset acquisitions, allowances for doubtful accounts, uncertainties related to certain income tax benefits, valuation of deferred income tax assets, valuations of share-based payments, annual incentive bonuses accrual, recoverability of long-lived assets and intangible assets, and product warranty liabilities.&#160; Management&#x2019;s estimates are based on historical experience and on our expectations that are believed to be reasonable.&#160;&#160;The combination of these factors forms the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources.&#160;&#160;Actual results may differ from our current estimates and those differences may be material.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;strong&gt;ontingencies &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;The Company accrues for claims and contingencies when losses become probable and reasonably estimable. As of the end of each applicable reporting period, the Company reviews each of its matters and, where it is probable that a liability has been or will be incurred, it accrues for all probable and reasonably estimable losses. Where the Company can reasonably estimate a range of losses it may incur regarding such a matter, it records an accrual for the amount within the range that constitutes its best estimate. If the Company can reasonably estimate a range but no amount within the range appears to be a better estimate than any other, it uses the amount that is the low end of such range.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Service, Software Solutions and Product Revenue Recognition &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;Revenue is recognized upon transfer of control of promised services, software solutions or products to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services and excludes any amounts collected on behalf of third parties. We enter into contracts that can include various combinations of products and services, which are generally capable of being distinct and accounted for as separate performance obligations. We recognize revenue for delivered elements only when we determine there are no uncertainties regarding customer acceptance. Changes in the allocation of the sales price between delivered and undelivered elements can impact the timing of revenue recognized but does not change the total revenue recognized on any agreement. Revenue is recognized net of any taxes collected from customers, which are subsequently remitted to governmental authorities. For more detailed information about revenue, see Note 2.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Cost of Service Revenue &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;Cost of service revenue includes cloud telecommunications services. Cloud telecommunications cost of service revenue primarily consists of fees we pay to third-party telecommunications and broadband Internet providers, costs of other third-party services we resell, personnel and travel expenses related to system implementation, and customer service. &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Cost of Software Solutions Revenue &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;Cost of software solutions revenue consists primarily of royalties and other fees paid to third parties whose technology or products are sold as part of the Company&#x2019;s products, direct costs to manufacture and distribute products, direct costs to provide product support and professional support services, direct costs associated with delivery of the Company&#x2019;s software offerings, and amortization expense related to developed technology intangible assets.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Cost of Product Revenue &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;Cost of product revenue primarily consists of the costs associated with the purchase of desktop devices and other third-party equipment we purchase for resale.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Product Warranty &#x2013; &lt;/strong&gt;We provide for the estimated cost of product warranties at the time we recognize revenue.&#160; We evaluate our warranty obligations on a product group basis. Our standard product warranty terms generally include post-sales support and repairs or replacement of a product at no additional charge for a specified period of time. We base our estimated warranty obligation upon warranty terms, ongoing product failure rates, and current period product shipments. If actual product failure rates, repair rates or any other post-sales support costs were to differ from our estimates, we would be required to make revisions to the estimated warranty liability. Warranty terms generally last for the duration that the customer has service. &#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Contingent Consideration &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;Contingent consideration represents deferred business acquisition and asset acquisition consideration to be paid out at some point in the future, typically over a one-year period or less from the acquisition date. Contingent consideration is recorded at the asset acquisition date fair value. Contingent consideration recorded in connection with a business acquisition is reported at fair value each reporting period until the contingency is resolved. Any changes in fair value are recognized in earnings. Contingent consideration recorded in connection with an asset acquisition is not derecognized until the related contingency is resolved and the consideration is paid or becomes payable. If the amount initially recorded as contingent consideration exceeds the amount paid or payable, the Company recognizes that excess amount as a reduction in the cost of the related intangible assets.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &lt;strong&gt;Research and Development &#x2013; &lt;/strong&gt;Research and development expenses consist primarily of personnel and related expenses for the Company&#x2019;s research and development staff, including salaries, benefits, bonuses and stock-based compensation and the cost of certain third-party contractors. Research and development costs are expensed as incurred. Costs related to internally developed software are expensed as research and development expense until technological feasibility has been achieved, after which the costs are capitalized.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Fair Value Measurements &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;The fair value of our financial assets and liabilities was determined based on three levels of inputs, of which the first two are considered observable and the last unobservable, that may be used to measure fair value which are the following:&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0.5in; text-align:justify;"&gt;&lt;em&gt;Level 1&lt;/em&gt; &#x2014; Unadjusted quoted prices that are available in active markets for the identical assets or liabilities at the measurement date.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0.5in; text-align:justify;"&gt;&lt;em&gt;Level 2&lt;/em&gt; &#x2014; Other observable inputs available at the measurement date, other than quoted prices included in Level 1, either directly or indirectly, including:&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="width:8%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:4%;vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;Quoted prices for similar assets or liabilities in active markets;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;Quoted prices for identical or similar assets in non-active markets;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;Inputs other than quoted prices that are observable for the asset or liability; and&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;Inputs that are derived principally from or corroborated by other observable market data.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;"&gt;&lt;em&gt;Level 3&lt;/em&gt; &#x2014; Unobservable inputs that cannot be corroborated by observable market data and reflect the use of significant management judgment. These values are generally determined using pricing models for which the assumptions utilize management&#x2019;s estimates of market participant assumptions.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Lease Obligations&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;We determine if an agreement is a lease at inception. We evaluate the lease terms to determine whether the lease will be accounted for as an operating or finance lease. Operating leases are included in operating lease right-of-use (&#x201c;ROU&#x201d;) assets, operating lease liabilities, current portion, and operating lease liabilities, net of current portion in our consolidated balance sheets.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. 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 in determining the present value of lease payments. We use the implicit rate when readily determinable. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. 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 lease payments is recognized on a straight-line basis over the lease term.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;A lease that transfers substantially all of the benefits and risks incidental to ownership of property are accounted for as finance leases. At the inception of a finance lease, an asset and finance lease obligation is recorded at an amount equal to the lesser of the present value of the minimum lease payments and the property&#x2019;s fair market value. Finance lease obligations are classified as either current or long-term based on the due dates of future minimum lease payments, net of interest.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Notes Payable&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;We record notes payable net of any discounts or premiums. Discounts and premiums are amortized as interest expense or income over the life of the note in such a way as to result in a constant rate of interest when applied to the amount outstanding at the beginning of any given period.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Income Taxes &#x2013;&lt;/strong&gt;We recognize a liability or asset for the deferred tax consequences of all temporary differences between the tax basis of assets and liabilities and their reported amounts in the consolidated financial statements that will result in taxable or deductible amounts in future years when the reported amounts of the assets and liabilities are recovered or settled. Accruals for uncertain tax positions are provided for in accordance with accounting guidance. Accordingly, we may recognize the tax benefits from an uncertain tax position only if it is more-likely-than-not that the tax position will be sustained on examination by the taxing authorities, based on the technical merits of the position. The tax benefits recognized in the financial statements from such a position should be measured based on the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement. Accounting guidance is also provided on de-recognition of income tax assets and liabilities, classification of current and deferred income tax assets and liabilities, accounting for interest and penalties associated with tax positions, and income tax disclosures. Judgment is required in assessing the future tax consequences of events that have been recognized in the financial statements or tax returns. Variations in the actual outcome of these future tax consequences could materially impact our financial position, results of operations, and cash flows. In assessing the need for a valuation allowance, we evaluate all significant available positive and negative evidence, including historical operating results, estimates of future taxable income and the existence of prudent and feasible tax planning strategies. At December 31, 2024, we determined that it is more likely-than-not that we will not be able to realize our deferred income tax assets in the future. A valuation allowance of $5,417 and $5,417 was recorded against our gross deferred tax asset balance as of March 31, 2025 and December 31, 2024, respectively.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Interest and penalties associated with income taxes are classified as income tax expense in the condensed consolidated statements of operations.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Stock-Based Compensation&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;For equity-classified awards, compensation expense is recognized over the requisite service period based on the computed fair value on the grant date of the award. Equity classified awards include the issuance of stock options and restricted stock units (&#x201c;RSUs&#x201d;).&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Operating Segments&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Accounting guidance establishes standards for the way public business enterprises are to report information about operating segments in annual financial statements and requires enterprises to report selected information about operating segments in financial reports issued to stockholders. The Company has reorganized into two operating segments, which consist of cloud telecommunications services and software solutions. The software solutions segment includes the results of operation of NetSapiens, LLC, NSHC, Inc., NetSapiens Canada, Inc., and NetSapiens International Limited. The cloud telecommunications segment includes the results of operations of Allegiant Networks, LLC, Crexendo Business Solutions, Inc., Crexendo International, Inc., and Crexendo Business Solutions of Virginia, Inc. We generate 96% of our total revenue from customers within the United States and 4% of our total revenues from customers in other parts of the world.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Significant Customers&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;No customer accounted for 10% or more of our total revenue for the three months ended March 31, 2025 and 2024. No customer accounted for 10% or more of our total trade accounts receivable as of March 31, 2025 and December 31, 2024.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Recently Adopted Accounting Pronouncements&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt; In November 2023, the FASB issued ASU 2023-07, &lt;em&gt;Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosure&lt;/em&gt;, to require a public entity to disclose significant segment expenses and other segment items on an annual and interim basis and to provide in interim periods all disclosures about a reportable segment&#x2019;s profit or loss and assets that are currently required annually. The Company adopted ASU 2023-07 (Topic 280) on a retrospective basis as of December 31, 2024, adding significant segment expense disclosures for the years ended December 31, 2024 and 2023. For more detailed information about reportable segments, see Note 16.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;In December 2023, the FASB issued ASU 2023-09, &lt;em&gt;Income Taxes (Topic 740): Improvements to Income Tax Disclosures&lt;/em&gt;, to enhance the transparency and decision-usefulness of income tax disclosures, particularly in the rate reconciliation table and disclosures about income taxes paid. The ASU&#x2019;s amendments are effective for annual periods beginning after December 15, 2024 on a prospective basis. Early adoption is permitted. The Company adopted ASU 2023-09 (Topic 740) as of January 1, 2025, the adoption of this ASU did not have a material impact on our quarterly income tax disclosures in our condensed consolidated financial statements and related disclosures.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Recently Issued Accounting Pronouncements&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt; In November 2024, the FASB issued ASU No. 2024-03, &#x201c;&lt;em&gt;Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses.&lt;/em&gt;&#x201d; ASU 2024-03 requires a public business entity (&#x201c;PBE&#x201d;) to disclose information in the notes to financial statements about purchases of inventory, employee compensation, depreciation, intangible asset amortization, and depletion for each income statement line item that contains those expenses. Entities would also have to disclose other specific expenses, gains, or losses that are already required to be disclosed under GAAP in this same disclosure, a qualitative description of the amounts remaining that are not separately disaggregated quantitatively, and the total amount of selling expenses, as well as the PBE&#x2019;s definition of selling expenses. In January 2025, the FASB Issued ASU No. 2025-01, "&lt;em&gt;Income Statement&#x2014;Reporting Comprehensive Income&#x2014;Expense Disaggregation Disclosures (Subtopic 220-40),&lt;/em&gt;" which clarified that ASU 2024-03 is effective public business entities for annual reporting periods beginning after December 15, 2026 and interim reporting periods within annual reporting periods beginning after December 15, 2027. Implementation of ASU 2024-03 may be applied prospectively or retrospectively. The application of this new guidance is not expected to have a material impact on the Company&#x2019;s financial statements, as the guidance pertains only to disclosures.&lt;/p&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <cxdo:DescriptionOfBusinessPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_779">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Description of Business &#x2013;&lt;/strong&gt;Crexendo, Inc. is incorporated in the state of Nevada. As used hereafter in the notes to condensed consolidated financial statements, we refer to Crexendo, Inc. and its wholly owned subsidiaries, as &#x201c;we,&#x201d; &#x201c;us,&#x201d; or &#x201c;our Company.&#x201d; Crexendo, Inc. is an award-winning software technology company that is a premier provider of cloud communication platform software and unified communications as a service (UCaaS) offerings, including voice, video, contact center, and managed IT services tailored to businesses of all sizes. Our cloud communications software solutions currently support over six million end users globally, through an extensive network of over 235 cloud communication platform software subscribers and our direct retail offering. The Company has two operating segments, which consist of Cloud Telecommunications and Software Solutions.&lt;/p&gt;</cxdo:DescriptionOfBusinessPolicyTextBlock>
    <us-gaap:BasisOfAccountingPolicyPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_780">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Basis of Presentation&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;The condensed consolidated financial statements include the accounts and operations of Crexendo, Inc. and its wholly owned subsidiaries, which include Allegiant Networks, LLC, Crexendo Business Solutions, Inc., NetSapiens, LLC, Crexendo Business Solutions of Virginia, Inc., NSHC, Inc., NetSapiens Canada, Inc., NetSapiens International Limited and Crexendo International, Inc. All intercompany account balances and transactions have been eliminated in consolidation. The accompanying unaudited interim condensed consolidated financial statements have been prepared in accordance with U.S. generally accepted accounting principles (&#x201c;US GAAP&#x201d;), consistent in all material respects with those applied in our financial statements included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2024. Because these financial statements address interim periods, they do not include all of the information and footnotes required by U.S. generally accepted accounting principles for complete financial statements. Such interim financial information is unaudited but reflects all adjustments that in the opinion of management are necessary for the fair presentation of the interim periods presented. The results of operations presented in this Quarterly Report on Form 10-Q are not necessarily indicative of the results that may be expected for the year ending December 31, 2025 or for any future periods. This Quarterly Report on Form 10-Q should be read in conjunction with the Company&#x2019;s audited financial statements and footnotes included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2024.&lt;/p&gt;</us-gaap:BasisOfAccountingPolicyPolicyTextBlock>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_781">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Foreign Currency Translation&lt;em&gt;-&lt;/em&gt;&lt;/strong&gt;The functional currency of our international subsidiaries is the local currency. We translate assets and liabilities of foreign subsidiaries, whose functional currency is their local currency, at exchange rates in effect at the balance sheet date. We translate revenue and expenses at the monthly average exchange rates. We include accumulated net translation adjustments in stockholders&#x2019; equity as a component of accumulated other comprehensive income (loss).&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Due to changes in exchange rates between reporting periods and changes in certain account balances, the foreign currency translation adjustment will change from period to period. During the three months ended March 31, 2025 and 2024, we recorded foreign currency translation gains/(losses) of $13, and $1, respectively, in our statements of comprehensive income (loss).&lt;/p&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1621"
      unitRef="USD">13000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1620"
      unitRef="USD">1000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_782">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Cash and Cash Equivalents&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;We consider all highly liquid, short-term investments with maturities of three months or less at the time of purchase to be cash equivalents. As of March 31, 2025 and December 31, 2024, we had cash and cash equivalents in financial institutions in excess of federally insured limits in the amount of $20,451 and $17,501 respectively.&lt;/p&gt;</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1622"
      unitRef="USD">20451000</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:CashEquivalentsAtCarryingValue
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1623"
      unitRef="USD">17501000</us-gaap:CashEquivalentsAtCarryingValue>
    <us-gaap:TradeAndOtherAccountsReceivablePolicy contextRef="From2025-01-01to2025-03-31" id="fid_783">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Trade Receivables and Allowance for Credit Losses&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Trade receivables from our cloud telecommunications services and software solutions segments are recorded at invoiced amounts. Trade receivables are generally due within 30 days after the invoice date. We provide an allowance for credit losses based on historical loss experience, the age of the receivables, specific troubled accounts and other currently available information.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;The allowance for credit losses is determined based on an assessment of historical collection experience using the aging schedule method as well as consideration of current and future economic conditions. Trade receivables are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our trade receivable credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary.&lt;/p&gt;</us-gaap:TradeAndOtherAccountsReceivablePolicy>
    <cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_784">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Equipment Financing Receivables and Allowance for Credit Losses&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Equipment financing receivables are comprised of sales-type leases. Sales-type leases are from financing options provided to clients for cloud telecommunications equipment (IP or cloud telephone desktop devices) and are generally due in installments over periods ranging from three to five years.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;We provide an allowance for credit losses based on historical loss experience, adverse situations that may affect a client's ability to pay, current economic conditions and outlook based on reasonable and supportable forecasts. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary. Equipment financing receivables are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our equipment financing receivable credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients.&lt;/p&gt;</cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesPolicyTextBlock>
    <cxdo:ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_785">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Contract Assets and Allowance for Credit Losses&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Contract assets primarily relate to the Company&#x2019;s rights to consideration for work completed but not billed as of the reporting date. The Company recognizes a contract asset when the Company transfers products or services to a customer and the right to consideration is conditional on something other than the passage of time. The contract assets are transferred to receivables when the rights become unconditional.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;The allowance for credit losses is determined based on an assessment of historical collection experience using the loss-rate method as well as consideration of current and future economic conditions and changes in our loss-rate trends. We utilize a five-year lookback period to establish our estimate of expected credit losses, as our contractual terms range from three to five years. Contract assets are written off against the allowance after all collection efforts have been exhausted and management deems the account to be uncollectible. We believe that our contract assets credit risk is low because of the geographic and industry diversification of our clients and small account balances for most of our clients. We continually evaluate the adequacy of the allowance for credit losses and adjust as necessary.&lt;/p&gt;</cxdo:ContractAssetsAndAllowanceForCreditLossesPolicyTextBlock>
    <cxdo:ContractCostsPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_786">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Contract Costs&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Contract costs primarily relate to incremental commission costs paid to sales representatives and sales leadership as a result of obtaining software solutions and telecommunication service contracts which are recoverable. The Company capitalized contract costs in the amount of $5,002 and $4,810 at March 31, 2025 and December 31, 2024, respectively. Capitalized commission costs are amortized based on the transfer of goods or services to which the assets relate, which typically range from thirty-six to sixty months, and are included in selling and marketing expenses. During the three months ended March 31, 2025 and 2024, the Company amortized $822 and $500, respectively, and there was no impairment loss in relation to the costs capitalized.&lt;/p&gt;</cxdo:ContractCostsPolicyTextBlock>
    <cxdo:CapitalizedContractCost
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1624"
      unitRef="USD">5002000</cxdo:CapitalizedContractCost>
    <cxdo:CapitalizedContractCost
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1625"
      unitRef="USD">4810000</cxdo:CapitalizedContractCost>
    <us-gaap:OtherSellingAndMarketingExpense
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1630"
      unitRef="USD">822000</us-gaap:OtherSellingAndMarketingExpense>
    <us-gaap:OtherSellingAndMarketingExpense
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1629"
      unitRef="USD">500000</us-gaap:OtherSellingAndMarketingExpense>
    <us-gaap:InventoryPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_787">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Inventory&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Finished goods telecommunications equipment inventory is stated at the lower of cost or net realizable value (first-in, first-out method). In accordance with applicable accounting guidance, we regularly evaluate whether inventory is stated at the lower of cost or net realizable value. If net realizable value is less than cost, the write-down is recognized as a loss in earnings in the period in which the excess occurs.&lt;/p&gt;</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_788">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Property and Equipment&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Depreciation and amortization expense is computed using the straight-line method in amounts sufficient to allocate the cost of depreciable assets over their estimated useful lives ranging from two to five years. The cost of leasehold improvements is amortized using the straight-line method over the shorter of the estimated useful life of the asset or the term of the related lease. Depreciable lives by asset group are as follows:&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;font-size:10pt;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Computer and office equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;2 to 5 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Computer software&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;3 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Internal-use software&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;3 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Furniture and fixtures&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;4 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Leasehold improvements&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;2 to 5 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Vehicles&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;5 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Maintenance and repairs are expensed as incurred. The cost and accumulated depreciation of property and equipment sold or otherwise retired are removed from the accounts and any related gain or loss on disposition is reflected in the statement of operations. &#160;&lt;/p&gt;</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <cxdo:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_814">&lt;table cellpadding="0" style="border-spacing:0;font-size:10pt;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Computer and office equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;2 to 5 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Computer software&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;3 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Internal-use software&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;3 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Furniture and fixtures&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;4 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Leasehold improvements&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;2 to 5 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Vehicles&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;5 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</cxdo:ScheduleOfPropertyPlantAndEquipmentUsefulLifeTableTextBlock>
    <cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives
      contextRef="From2025-01-01to2025-03-31_us-gaap_OfficeEquipmentMember"
      id="fid_1609">2 to 5 years</cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives>
    <cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives
      contextRef="From2025-01-01to2025-03-31_cxdo_ComputerSoftwareIntangibleAssetsMember"
      id="fid_1610">3 years</cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives>
    <cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives
      contextRef="From2025-01-01to2025-03-31_cxdo_InternalUseComputerSoftwareMember"
      id="fid_1611">3 years</cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives>
    <cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives
      contextRef="From2025-01-01to2025-03-31_us-gaap_FurnitureAndFixturesMember"
      id="fid_1612">4 years</cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives>
    <cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives
      contextRef="From2025-01-01to2025-03-31_us-gaap_LeaseholdImprovementsMember"
      id="fid_1613">2 to 5 years</cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives>
    <cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives
      contextRef="From2025-01-01to2025-03-31_us-gaap_VehiclesMember"
      id="fid_1614">5 years</cxdo:PropertyPlantsAndEquipmentEstimatedUsefulLives>
    <us-gaap:BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_790">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Asset Acquisitions&lt;/strong&gt;&lt;strong&gt; &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;Periodically we acquire customer relationships that we account for as an asset acquisition and record a corresponding intangible asset that is amortized over its estimated useful life. Any excess of the fair value of the purchase price over the fair value of the identifiable assets and liabilities is allocated on a relative fair value basis. No goodwill is recorded in an asset acquisition. If the fair value of the assets acquired exceeds the initial consideration paid as of the date of acquisition but includes a contingent consideration arrangement and ASC 450 and ASC 815 do not apply to contingent consideration, we analogize to the guidance in ASC 323 on recognizing contingent consideration in the acquisition of an equity method investment. The Company recognizes a liability equal to the lesser of, the maximum amount of contingent consideration or the excess of the fair value of the net assets acquired over the initial cost measurement. In accordance with the requirements of ASC 323 for equity method investments, the Company recognizes any excess of the contingent consideration issued or issuable, over the amount that was initially recognized as a liability, as an additional cost of the asset acquisition. If the amount initially recognized as a liability exceeds the contingent consideration issued or issuable, the entity recognizes that amount as a reduction of the cost of the asset acquisition.&#160; &lt;/p&gt;</us-gaap:BusinessCombinationsAndOtherPurchaseOfBusinessTransactionsPolicyTextBlock>
    <us-gaap:BusinessCombinationsPolicy contextRef="From2025-01-01to2025-03-31" id="fid_791">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Business Acquisitions - &lt;/strong&gt;We account for business combinations using the acquisition method of accounting. The acquisition method of accounting requires that the purchase price, including the fair value of contingent consideration, of the acquisition be allocated to the assets acquired and liabilities assumed using the fair values determined by management as of the acquisition date. Goodwill as of the acquisition date is measured as the excess of consideration transferred over the net of the acquisition date fair values of assets acquired and the liabilities assumed. While the Company uses its best estimates and assumptions as part of the purchase price allocation process to accurately value assets acquired and liabilities assumed at the acquisition date, the Company&#x2019;s estimates are inherently uncertain and subject to refinement. As a result, during the measurement period, which may be up to one year from the acquisition date, the Company records adjustments to the assets acquired and liabilities assumed, with the corresponding offset to goodwill to the extent the Company identifies adjustments to the preliminary purchase price allocation. Upon the conclusion of the measurement period or final determination of the values of assets acquired or liabilities assumed, whichever comes first, any subsequent adjustments are recorded to the consolidated statements of operations. We include the results of all acquisitions in our consolidated financial statements from the date of acquisition. Acquisition related transaction costs, such as banking, legal, accounting and other costs incurred in connection with an acquisition, are expensed as incurred in general and administrative expenses.&lt;/p&gt;</us-gaap:BusinessCombinationsPolicy>
    <us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy contextRef="From2025-01-01to2025-03-31" id="fid_792">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Goodwill &lt;/strong&gt;&lt;strong&gt;&#x2013;&#160;&lt;/strong&gt;We have recorded goodwill related to various business acquisitions. Goodwill is recorded when the purchase price paid for an acquisition exceeds the estimated fair value of the net identified tangible and intangible assets acquired. In each of our acquisitions, the objective of the acquisition was to expand our product offerings and customer base and to achieve synergies related to cross selling opportunities, all of which contributed to the recognition of goodwill.&#160; We test goodwill for impairment on an annual basis or more frequently if events or changes in circumstances indicate that goodwill might be impaired. Items that could reasonably be expected to negatively affect key assumptions used in estimating fair value include but are not limited to: sustained decline in our stock price due to a decline in our financial performance due to the loss of key customers, loss of key personnel, emergence of new technologies or new competitors; and decline in overall market or economic conditions leading to a decline in our stock price.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;The process of estimating the fair value of goodwill is subjective and requires the Company to make estimates that may significantly impact the outcome of the analysis. A qualitative assessment considers events and circumstances such as macroeconomic conditions, industry and market conditions, cost factors and overall financial performance, as well as company specifications. If after performing this assessment, the Company concludes it is more likely than not that the fair value of the reporting unit is less than its carrying amount, then the Company must perform the quantitative test. Under the quantitative test, a goodwill impairment is identified by comparing the fair value of the reporting unit to the carrying amount, including goodwill. If the carrying amount of the reporting unit exceeds the fair value of the reporting unit, goodwill is considered impaired and an impairment charge is recognized in an amount equal to the excess, not to exceed the carrying amount of goodwill.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Impairment assessment inherently involves management judgments regarding a number of assumptions. The reporting unit fair value also depends on the future strength of the U.S. economy. New and developing competition as well as technological change could also adversely affect future fair value estimates. Due to the many variables inherent in the estimation of a reporting unit&#x2019;s fair value and the relative size of the Company&#x2019;s recorded goodwill, differences in assumptions could have a material effect on the estimated fair values. For further information, see Note 8 (Intangible Assets and Goodwill).&lt;/p&gt;</us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy>
    <us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsPolicy contextRef="From2025-01-01to2025-03-31" id="fid_793">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Intangible Assets &#x2013; &lt;/strong&gt;Our intangible assets consist of customer relationships, developed technologies, trademarks and trade name. The intangible assets are amortized following the patterns in which the economic benefits are consumed or straight-line over the estimated useful life. We periodically review the estimated useful lives of our intangible assets and review these assets for impairment whenever events or changes in circumstances indicate that the carrying value of the assets may not be recoverable. The determination of impairment is based on estimates of future undiscounted cash flows. If an intangible asset is considered to be impaired, the amount of the impairment will be equal to the excess of the carrying value over the fair value of the asset. &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Amortizable intangible assets are amortized over the estimated useful lives as follows:&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;font-size:10pt;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Customer relationships&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;6 to 16 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Developed technologies&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;2 to 6 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Trademark and trade names&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;4 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:GoodwillAndIntangibleAssetsIntangibleAssetsPolicy>
    <cxdo:ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_813">&lt;table cellpadding="0" style="border-spacing:0;font-size:10pt;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Customer relationships&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;6 to 16 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Developed technologies&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;2 to 6 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="width:72%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Trademark and trade names&lt;/p&gt;&lt;/td&gt;&lt;td style="width:12%;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;4 years&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</cxdo:ScheduleOfIntangibleAssetsUsefulLifeTableTextBlock>
    <cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife
      contextRef="From2025-01-01to2025-03-31_cxdo_CustomerRelationshipMember_cxdo_BottomMember"
      id="fid_1615">P6Y</cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife>
    <cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife
      contextRef="From2025-01-01to2025-03-31_cxdo_CustomerRelationshipMember_cxdo_TopMember"
      id="fid_1616">P16Y</cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife>
    <cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife
      contextRef="From2025-01-01to2025-03-31_cxdo_DevelopedTechnologiesMember_cxdo_BottomMember"
      id="fid_1617">P2Y</cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife>
    <cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife
      contextRef="From2025-01-01to2025-03-31_cxdo_DevelopedTechnologiesMember_cxdo_TopMember"
      id="fid_1618">P6Y</cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife>
    <cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife
      contextRef="From2025-01-01to2025-03-31_cxdo_TrademarkTradeNamesMember"
      id="fid_1619">P4Y</cxdo:FiniteLivedIntangibleAssetEstimatedUsefulLife>
    <cxdo:ContractLiabilitiesPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_794">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Contract Liabilities &lt;/strong&gt;&lt;strong&gt;&#x2013;&#160;&lt;/strong&gt;Our contract liabilities consist primarily of advance consideration received from customers for telecommunications contracts. The product and monthly service revenue is recognized on completion of the implementation and the remaining activation fees are reclassified as contract liabilities.&lt;/p&gt;</cxdo:ContractLiabilitiesPolicyTextBlock>
    <us-gaap:UseOfEstimates contextRef="From2025-01-01to2025-03-31" id="fid_795">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Use of Estimates &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;In preparing the consolidated financial statements, management makes assumptions, estimates and judgments that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the dates of the consolidated financial statements and the reported amounts of net sales and expenses during the reported periods.&#160;&#160;Specific estimates and judgments include valuation of goodwill and intangible assets in connection with business acquisitions and asset acquisitions, allowances for doubtful accounts, uncertainties related to certain income tax benefits, valuation of deferred income tax assets, valuations of share-based payments, annual incentive bonuses accrual, recoverability of long-lived assets and intangible assets, and product warranty liabilities.&#160; Management&#x2019;s estimates are based on historical experience and on our expectations that are believed to be reasonable.&#160;&#160;The combination of these factors forms the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources.&#160;&#160;Actual results may differ from our current estimates and those differences may be material.&lt;/p&gt;</us-gaap:UseOfEstimates>
    <us-gaap:CommitmentsAndContingenciesPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_796">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;strong&gt;ontingencies &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;The Company accrues for claims and contingencies when losses become probable and reasonably estimable. As of the end of each applicable reporting period, the Company reviews each of its matters and, where it is probable that a liability has been or will be incurred, it accrues for all probable and reasonably estimable losses. Where the Company can reasonably estimate a range of losses it may incur regarding such a matter, it records an accrual for the amount within the range that constitutes its best estimate. If the Company can reasonably estimate a range but no amount within the range appears to be a better estimate than any other, it uses the amount that is the low end of such range.&lt;/p&gt;</us-gaap:CommitmentsAndContingenciesPolicyTextBlock>
    <cxdo:RevenueRecognitionSalesOfServicesPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_797">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Service, Software Solutions and Product Revenue Recognition &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;Revenue is recognized upon transfer of control of promised services, software solutions or products to customers in an amount that reflects the consideration we expect to receive in exchange for those products or services and excludes any amounts collected on behalf of third parties. We enter into contracts that can include various combinations of products and services, which are generally capable of being distinct and accounted for as separate performance obligations. We recognize revenue for delivered elements only when we determine there are no uncertainties regarding customer acceptance. Changes in the allocation of the sales price between delivered and undelivered elements can impact the timing of revenue recognized but does not change the total revenue recognized on any agreement. Revenue is recognized net of any taxes collected from customers, which are subsequently remitted to governmental authorities. For more detailed information about revenue, see Note 2.&lt;/p&gt;</cxdo:RevenueRecognitionSalesOfServicesPolicyTextBlock>
    <cxdo:CostOfServiceRevenuePolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_798">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Cost of Service Revenue &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;Cost of service revenue includes cloud telecommunications services. Cloud telecommunications cost of service revenue primarily consists of fees we pay to third-party telecommunications and broadband Internet providers, costs of other third-party services we resell, personnel and travel expenses related to system implementation, and customer service. &lt;/p&gt;</cxdo:CostOfServiceRevenuePolicyTextBlock>
    <cxdo:CostOfSoftwareSolutionsRevenuePolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_799">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Cost of Software Solutions Revenue &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;Cost of software solutions revenue consists primarily of royalties and other fees paid to third parties whose technology or products are sold as part of the Company&#x2019;s products, direct costs to manufacture and distribute products, direct costs to provide product support and professional support services, direct costs associated with delivery of the Company&#x2019;s software offerings, and amortization expense related to developed technology intangible assets.&lt;/p&gt;</cxdo:CostOfSoftwareSolutionsRevenuePolicyTextBlock>
    <cxdo:CostOfProductRevenuePolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_800">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Cost of Product Revenue &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;Cost of product revenue primarily consists of the costs associated with the purchase of desktop devices and other third-party equipment we purchase for resale.&lt;/p&gt;</cxdo:CostOfProductRevenuePolicyTextBlock>
    <us-gaap:StandardProductWarrantyPolicy contextRef="From2025-01-01to2025-03-31" id="fid_801">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Product Warranty &#x2013; &lt;/strong&gt;We provide for the estimated cost of product warranties at the time we recognize revenue.&#160; We evaluate our warranty obligations on a product group basis. Our standard product warranty terms generally include post-sales support and repairs or replacement of a product at no additional charge for a specified period of time. We base our estimated warranty obligation upon warranty terms, ongoing product failure rates, and current period product shipments. If actual product failure rates, repair rates or any other post-sales support costs were to differ from our estimates, we would be required to make revisions to the estimated warranty liability. Warranty terms generally last for the duration that the customer has service. &#160;&lt;/p&gt;</us-gaap:StandardProductWarrantyPolicy>
    <cxdo:ContingentConsiderationPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_802">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Contingent Consideration &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;Contingent consideration represents deferred business acquisition and asset acquisition consideration to be paid out at some point in the future, typically over a one-year period or less from the acquisition date. Contingent consideration is recorded at the asset acquisition date fair value. Contingent consideration recorded in connection with a business acquisition is reported at fair value each reporting period until the contingency is resolved. Any changes in fair value are recognized in earnings. Contingent consideration recorded in connection with an asset acquisition is not derecognized until the related contingency is resolved and the consideration is paid or becomes payable. If the amount initially recorded as contingent consideration exceeds the amount paid or payable, the Company recognizes that excess amount as a reduction in the cost of the related intangible assets.&lt;/p&gt;</cxdo:ContingentConsiderationPolicyTextBlock>
    <us-gaap:ResearchAndDevelopmentExpensePolicy contextRef="From2025-01-01to2025-03-31" id="fid_803">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; &lt;strong&gt;Research and Development &#x2013; &lt;/strong&gt;Research and development expenses consist primarily of personnel and related expenses for the Company&#x2019;s research and development staff, including salaries, benefits, bonuses and stock-based compensation and the cost of certain third-party contractors. Research and development costs are expensed as incurred. Costs related to internally developed software are expensed as research and development expense until technological feasibility has been achieved, after which the costs are capitalized.&lt;/p&gt;</us-gaap:ResearchAndDevelopmentExpensePolicy>
    <us-gaap:FairValueMeasurementPolicyPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_804">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Fair Value Measurements &lt;/strong&gt;&lt;strong&gt;&#x2013; &lt;/strong&gt;The fair value of our financial assets and liabilities was determined based on three levels of inputs, of which the first two are considered observable and the last unobservable, that may be used to measure fair value which are the following:&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0.5in; text-align:justify;"&gt;&lt;em&gt;Level 1&lt;/em&gt; &#x2014; Unadjusted quoted prices that are available in active markets for the identical assets or liabilities at the measurement date.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0.5in; text-align:justify;"&gt;&lt;em&gt;Level 2&lt;/em&gt; &#x2014; Other observable inputs available at the measurement date, other than quoted prices included in Level 1, either directly or indirectly, including:&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="width:8%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:4%;vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;Quoted prices for similar assets or liabilities in active markets;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;Quoted prices for identical or similar assets in non-active markets;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;Inputs other than quoted prices that are observable for the asset or liability; and&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;Inputs that are derived principally from or corroborated by other observable market data.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;"&gt;&lt;em&gt;Level 3&lt;/em&gt; &#x2014; Unobservable inputs that cannot be corroborated by observable market data and reflect the use of significant management judgment. These values are generally determined using pricing models for which the assumptions utilize management&#x2019;s estimates of market participant assumptions.&lt;/p&gt;</us-gaap:FairValueMeasurementPolicyPolicyTextBlock>
    <us-gaap:LesseeLeasesPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_805">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Lease Obligations&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;We determine if an agreement is a lease at inception. We evaluate the lease terms to determine whether the lease will be accounted for as an operating or finance lease. Operating leases are included in operating lease right-of-use (&#x201c;ROU&#x201d;) assets, operating lease liabilities, current portion, and operating lease liabilities, net of current portion in our consolidated balance sheets.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. 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 in determining the present value of lease payments. We use the implicit rate when readily determinable. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. 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 lease payments is recognized on a straight-line basis over the lease term.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;A lease that transfers substantially all of the benefits and risks incidental to ownership of property are accounted for as finance leases. At the inception of a finance lease, an asset and finance lease obligation is recorded at an amount equal to the lesser of the present value of the minimum lease payments and the property&#x2019;s fair market value. Finance lease obligations are classified as either current or long-term based on the due dates of future minimum lease payments, net of interest.&lt;/p&gt;</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:DebtPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_806">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Notes Payable&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;We record notes payable net of any discounts or premiums. Discounts and premiums are amortized as interest expense or income over the life of the note in such a way as to result in a constant rate of interest when applied to the amount outstanding at the beginning of any given period.&lt;/p&gt;</us-gaap:DebtPolicyTextBlock>
    <us-gaap:IncomeTaxPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_807">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Income Taxes &#x2013;&lt;/strong&gt;We recognize a liability or asset for the deferred tax consequences of all temporary differences between the tax basis of assets and liabilities and their reported amounts in the consolidated financial statements that will result in taxable or deductible amounts in future years when the reported amounts of the assets and liabilities are recovered or settled. Accruals for uncertain tax positions are provided for in accordance with accounting guidance. Accordingly, we may recognize the tax benefits from an uncertain tax position only if it is more-likely-than-not that the tax position will be sustained on examination by the taxing authorities, based on the technical merits of the position. The tax benefits recognized in the financial statements from such a position should be measured based on the largest benefit that has a greater than 50% likelihood of being realized upon ultimate settlement. Accounting guidance is also provided on de-recognition of income tax assets and liabilities, classification of current and deferred income tax assets and liabilities, accounting for interest and penalties associated with tax positions, and income tax disclosures. Judgment is required in assessing the future tax consequences of events that have been recognized in the financial statements or tax returns. Variations in the actual outcome of these future tax consequences could materially impact our financial position, results of operations, and cash flows. In assessing the need for a valuation allowance, we evaluate all significant available positive and negative evidence, including historical operating results, estimates of future taxable income and the existence of prudent and feasible tax planning strategies. At December 31, 2024, we determined that it is more likely-than-not that we will not be able to realize our deferred income tax assets in the future. A valuation allowance of $5,417 and $5,417 was recorded against our gross deferred tax asset balance as of March 31, 2025 and December 31, 2024, respectively.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Interest and penalties associated with income taxes are classified as income tax expense in the condensed consolidated statements of operations.&lt;/p&gt;</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1626"
      unitRef="USD">5417000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance
      contextRef="From2024-01-01to2024-12-31"
      decimals="-3"
      id="fid_1631"
      unitRef="USD">5417000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy contextRef="From2025-01-01to2025-03-31" id="fid_808">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Stock-Based Compensation&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;For equity-classified awards, compensation expense is recognized over the requisite service period based on the computed fair value on the grant date of the award. Equity classified awards include the issuance of stock options and restricted stock units (&#x201c;RSUs&#x201d;).&lt;/p&gt;</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:SegmentReportingPolicyPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_809">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Operating Segments&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;Accounting guidance establishes standards for the way public business enterprises are to report information about operating segments in annual financial statements and requires enterprises to report selected information about operating segments in financial reports issued to stockholders. The Company has reorganized into two operating segments, which consist of cloud telecommunications services and software solutions. The software solutions segment includes the results of operation of NetSapiens, LLC, NSHC, Inc., NetSapiens Canada, Inc., and NetSapiens International Limited. The cloud telecommunications segment includes the results of operations of Allegiant Networks, LLC, Crexendo Business Solutions, Inc., Crexendo International, Inc., and Crexendo Business Solutions of Virginia, Inc. We generate 96% of our total revenue from customers within the United States and 4% of our total revenues from customers in other parts of the world.&lt;/p&gt;</us-gaap:SegmentReportingPolicyPolicyTextBlock>
    <cxdo:RevenueConcentrationRiskPercentage
      contextRef="From2025-01-01to2025-03-31_cxdo_OtherCountriesMember"
      decimals="INF"
      id="fid_1635"
      unitRef="Pure">0.04</cxdo:RevenueConcentrationRiskPercentage>
    <us-gaap:MajorCustomersPolicyPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_810">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Significant Customers&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt;No customer accounted for 10% or more of our total revenue for the three months ended March 31, 2025 and 2024. No customer accounted for 10% or more of our total trade accounts receivable as of March 31, 2025 and December 31, 2024.&lt;/p&gt;</us-gaap:MajorCustomersPolicyPolicyTextBlock>
    <cxdo:RevenueConcentrationRiskPercentage
      contextRef="From2025-01-01to2025-03-31"
      decimals="INF"
      id="fid_1627"
      unitRef="Pure">0.10</cxdo:RevenueConcentrationRiskPercentage>
    <cxdo:AccountsReceivableConcentrationRiskPercentage
      contextRef="From2025-01-01to2025-03-31"
      decimals="INF"
      id="fid_1632"
      unitRef="Pure">0.10</cxdo:AccountsReceivableConcentrationRiskPercentage>
    <cxdo:RecentlyAdoptedAccountingPronouncementsPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_811">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Recently Adopted Accounting Pronouncements&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt; In November 2023, the FASB issued ASU 2023-07, &lt;em&gt;Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosure&lt;/em&gt;, to require a public entity to disclose significant segment expenses and other segment items on an annual and interim basis and to provide in interim periods all disclosures about a reportable segment&#x2019;s profit or loss and assets that are currently required annually. The Company adopted ASU 2023-07 (Topic 280) on a retrospective basis as of December 31, 2024, adding significant segment expense disclosures for the years ended December 31, 2024 and 2023. For more detailed information about reportable segments, see Note 16.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;In December 2023, the FASB issued ASU 2023-09, &lt;em&gt;Income Taxes (Topic 740): Improvements to Income Tax Disclosures&lt;/em&gt;, to enhance the transparency and decision-usefulness of income tax disclosures, particularly in the rate reconciliation table and disclosures about income taxes paid. The ASU&#x2019;s amendments are effective for annual periods beginning after December 15, 2024 on a prospective basis. Early adoption is permitted. The Company adopted ASU 2023-09 (Topic 740) as of January 1, 2025, the adoption of this ASU did not have a material impact on our quarterly income tax disclosures in our condensed consolidated financial statements and related disclosures.&lt;/p&gt;</cxdo:RecentlyAdoptedAccountingPronouncementsPolicyTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_812">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;strong&gt;Recently Issued Accounting Pronouncements&lt;/strong&gt;&lt;strong&gt;&#x2013;&lt;/strong&gt; In November 2024, the FASB issued ASU No. 2024-03, &#x201c;&lt;em&gt;Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses.&lt;/em&gt;&#x201d; ASU 2024-03 requires a public business entity (&#x201c;PBE&#x201d;) to disclose information in the notes to financial statements about purchases of inventory, employee compensation, depreciation, intangible asset amortization, and depletion for each income statement line item that contains those expenses. Entities would also have to disclose other specific expenses, gains, or losses that are already required to be disclosed under GAAP in this same disclosure, a qualitative description of the amounts remaining that are not separately disaggregated quantitatively, and the total amount of selling expenses, as well as the PBE&#x2019;s definition of selling expenses. In January 2025, the FASB Issued ASU No. 2025-01, "&lt;em&gt;Income Statement&#x2014;Reporting Comprehensive Income&#x2014;Expense Disaggregation Disclosures (Subtopic 220-40),&lt;/em&gt;" which clarified that ASU 2024-03 is effective public business entities for annual reporting periods beginning after December 15, 2026 and interim reporting periods within annual reporting periods beginning after December 15, 2027. Implementation of ASU 2024-03 may be applied prospectively or retrospectively. The application of this new guidance is not expected to have a material impact on the Company&#x2019;s financial statements, as the guidance pertains only to disclosures.&lt;/p&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_759">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;strong&gt;2. Revenue&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Revenue is measured based on a consideration specified in a contract with a customer, and excludes any sales incentives and amounts collected on behalf of third parties. The Company recognizes revenue when it satisfies a performance obligation by transferring control over a product, service, or software solution to a customer. Taxes assessed by a governmental authority that are both imposed on and concurrent with a specific revenue-producing transaction, that are collected by the Company from a customer, are excluded from revenue. The following is a description of principal activities &#x2013; separated by reportable segments &#x2013; from which the Company generates its revenue.&#160; For more detailed information about reportable segments, see Note 16.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;strong&gt;&lt;em&gt;Cloud Telecommunications Services Segment &lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;Products and services may be sold separately or in bundled packages. The typical length of a contract for service is thirty-nine to ninety months. Customers are billed for these services on a monthly basis. For bundled packages, the Company accounts for individual products and services separately if they are distinct &#x2013; i.e. if a product or service is separately identifiable from other items in the bundled package and if a customer can benefit from it on its own or with other resources that are readily available to the customer. The consideration (including any discounts) is allocated between separate products and services in a bundle based on their relative stand-alone selling prices. The stand-alone selling prices are determined based on the prices at which the Company separately sells the desktop devices and telecommunication services. For items that are not sold separately (e.g. additional features) the Company estimates stand-alone selling prices using the adjusted market assessment approach. When we provide a free trial period, we do not begin to recognize recurring revenue until the trial period has ended and the customer has been billed for the services.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;em&gt;Desktop Devices&lt;/em&gt;&lt;strong&gt; &#x2013;&#160;&lt;/strong&gt;Revenue generated from the sale of telecommunications equipment (desktop devices) is recognized when the customer takes possession of the devices and the cloud telecommunications services begin. The Company typically bills and collects the fees for the equipment upon entering into a contract with a customer. Cash receipts are recorded as a contract liability until implementation is complete and the services begin. &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;em&gt;Equipment Financing Revenue&lt;/em&gt;&lt;strong&gt; &#x2013;&#160;&lt;/strong&gt;Fees generated from renting our cloud telecommunication equipment (IP or cloud telephone desktop devices) through leasing contracts are recognized as revenue based on whether the lease qualifies as an operating lease or sales-type lease. The two primary accounting provisions which we use to classify transactions as sales-type or operating leases are: 1) lease term to determine if it is equal to or greater than 75% of the economic life of the equipment and 2) the present value of the minimum lease payments to determine if they are equal to or greater than 90% of the fair market value of the equipment at the inception of the lease. The economic life of most of our products is estimated to be three years, since this represents the most frequent contractual lease term for our products, and there is no residual value for used equipment. Residual values, if any, are established at the lease inception using estimates of fair value at the end of the lease term. The vast majority of our leases that qualify as sales-type leases are non-cancelable and include cancellation penalties approximately equal to the full value of the lease receivables. Leases that do not meet the criteria for sales-type lease accounting are accounted for as operating leases. Revenue from sales-type leases is recognized upon installation and the interest portion is deferred and recognized as earned. Revenue from operating leases in recognized ratably over the applicable service period.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;em&gt;Cloud Telecommunications Services&lt;/em&gt;&lt;strong&gt; &#x2013;&#160;&lt;/strong&gt;Cloud telecommunication services include voice, data, collaboration software, broadband Internet access, managed IT services, cloud server rental and support, managed security, cabling, software license sales, interest generated from equipment financing revenue, and support for premise-based PBX phone systems. The Company recognizes revenue as services are provided in service revenue. Fees generated from reselling broadband Internet access are recognized as revenue net of the costs charged by the third-party service providers. Cloud telecommunications services are billed and paid on a monthly basis. Our telecommunications services contracts typically have a term of thirty-nine to ninety months.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;em&gt;Fees, Commissions, and Other, Recognized over Time&lt;/em&gt;&lt;strong&gt; &#x2013;&#160;&lt;/strong&gt;Includes contracted and non-contracted items such as:&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="width:8%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:4%;vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;Contracted activation and flash fees &#x2013; The Company generally allocates a portion of the activation fees to the desktop devices, which is recognized at the time of the installation or customer acceptance, and a portion to the service, which is recognized over the contract term using the straight-line method.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;Non-contracted carrier cost recovery fee &#x2013; This fee recovers the various costs and expenses that the Company incurs in connection with complying with legal, regulatory, and other requirements, including without limitation federal, state, and local reporting and filing requirements. This fee is assessed as a set percentage of our monthly billing and is recognized monthly.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;Non-contracted administrative fees &#x2013; Administrative fees are recognized as revenue on a monthly basis.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160; &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;em&gt;One-Time Fees, Commissions, and Other&lt;/em&gt;&lt;strong&gt; &#x2013;&#160;&lt;/strong&gt;Includes contracted and non-contracted items such as:&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="width:8%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:4%;vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;Contracted professional service revenue &#x2013; Professional service revenue includes professional installation services, custom integration, and other professional services. The Company typically bills and collects professional service revenue upon entering into a contract with a customer. Professional service revenue is recognized as revenue when the performance obligations are completed.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;Non-contracted cancellation fees &#x2013; These cancellation fees relate to remaining contractual term buyout payments in connection with early cancellation and are billed and recognized as revenue upon receipt.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;Other non-contracted fees &#x2013; These fees include disconnect fees, shipping fees, restocking fees, and porting fees. Other non-contracted fees are recognized as revenue upon receipt of payment.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;strong&gt;&lt;em&gt;Software Solutions Segment&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;The Software Solutions segment derives revenues from three primary sources: software licenses, software maintenance support and professional services. Software and services may be sold separately or in bundled packages. Generally, contracts with customers contain multiple performance obligations, consisting of software and services. For bundled packages, the Company accounts for individual products and services separately if they are distinct &#x2013; i.e. if a product or service is separately identifiable from other items in the bundled package and if a customer can benefit from it on its own or with other resources that are readily available to the customer. The consideration (including any discounts) is allocated between separate products and services in a bundle based on their relative stand-alone selling prices. The stand-alone selling prices are determined based on the prices at which the Company separately sells the software licenses and professional services.&#160; For items that are not sold separately (e.g. additional features) the Company estimates stand-alone selling prices using the adjusted market assessment approach. When we provide a free trial period, we do not begin to recognize recurring revenue until the trial period has ended and the customer has been billed for the services.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;em&gt;Software Licenses&lt;/em&gt;&lt;strong&gt; - &lt;/strong&gt;The Company's software licenses typically provide a perpetual right to use the Company's software. The Company also sells term-based software licenses that expire and Software-as-a-Service ("SaaS") based software which are referred to as subscription arrangements. The Company does not customize its software nor are installation services required, as the customer has a right to utilize internal resources or a third-party service company. The software is delivered before related services are provided and are functional without professional services or customer support. The Company has concluded that its software licenses are functional intellectual property that are distinct, as the user can benefit from the software on its own. The software license revenue could be recognized upon transfer of control or when the software is made available for download, as this is the point that the user of the software can direct the use of, and obtain substantially all of the remaining benefits from, the functional intellectual property. However, historical experience shows that customers regularly renegotiate the number of licenses during the installation process.&#160; Therefore, the Company recognizes revenue from software licenses when the setup is complete.&#160; The Company does not recognize software revenue related to the renewal of subscription software licenses earlier than the beginning of the subscription period. &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="width:8%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:4%;vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;em&gt;SNAPsolution&#xae;&lt;/em&gt; - a comprehensive, IP-based platform that provides a broad suite of UC services including hosted Private Branch Exchange (PBX), auto-attendant, call center, conferencing, and mobility. The platform includes a broad range of feature-sets, custom-built to provide unprecedented levels of flexibility, making the solution competitive with the market&#x2019;s leading players. SNAPsolution includes a full suite of Voice over Internet Protocol (VoIP)/UC features with one low cost universal license, as opposed to pricing each feature individually. The Company licenses its platform based on concurrent sessions, not per seat/per feature. This allows service providers to oversubscribe their networks, driving down the cost per seat as volume increases. As the service provider increases their customer base, they only have to ensure they have sufficient concurrent call licenses to support users across the network. The Company recognizes one-time upfront software license revenue when the software setup is complete.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 30px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;span style="font-family:symbol"&gt;&#xb7;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;em&gt;SNAPaccel &#x2013; a &lt;/em&gt;Software-as-a-Service ("SaaS") based software license referred to as subscription arrangements. The Company recognizes revenue as subscriptions are provided in service revenue on a monthly basis.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160; &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;em&gt;Subscription Maintenance and Support -&lt;/em&gt;&lt;strong&gt; &lt;/strong&gt;Subscription maintenance and support revenue includes revenue from maintenance service contracts, customer support, and other supportive services. The Company offers warranties on its products. The warranty period for the Company&#x2019;s licensed software is generally 90 days. Certain of the Company's warranties are considered to be assurance-type in nature and do not cover anything beyond ensuring that the product is functioning as intended. Based on the guidance in ASC 606, assurance-type warranties do not represent separate performance obligations. The Company also sells separately-priced maintenance service contracts, which qualify as service-type warranties and represent separate performance obligations. The Company does not typically allow and has no history of accepting material product returns.&#160; Customer support includes software updates on a when-and-if-available basis, telephone support, integrated web-based support and bug fixes or patches. Subscription and maintenance support revenue is recognized ratably over the term of the customer support agreement, which is typically one year. &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&lt;em&gt;Professional Services and Other - &lt;/em&gt;The Company's professional services include consulting, technical support, resident engineer services, design services and installation services. Revenue from professional services and other is recognized when the performance obligation is complete and the customer has accepted the performance obligation.&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;strong&gt;&lt;em&gt;Disaggregation of Revenue&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;In the following table, revenue is disaggregated by primary major product line, and timing of revenue recognition. The table also includes a reconciliation of the disaggregated revenue with the reportable segments.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Three Months Ended March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Cloud&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Software&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;(In thousands)&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Telecommunications&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Solutions&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Reportable&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segments&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Major products/services lines&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Desktop devices&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,007&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,007&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Equipment financing revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;198&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;198&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Telecommunications services&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,933&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,933&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Fees, commissions, and other, recognized over time&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;598&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;598&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;One time fees, commissions and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;453&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;453&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Software licenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,011&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,011&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Subscription maintenance and support&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,587&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,587&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Professional services and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;270&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;270&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;9,189&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;6,868&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;16,057&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Timing of revenue recognition&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Products, services, and fees recognized at a point in time&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,460&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,281&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,741&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Products, services, and fees transferred over time&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;7,729&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;4,587&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;12,316&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;9,189&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;6,868&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;16,057&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Three Months Ended March 31, 2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Cloud&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Software&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;(In thousands)&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Telecommunications&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Solutions&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Reportable&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segments&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Major products/services lines&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Desktop devices&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,295&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,295&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Equipment financing revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;152&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;152&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Telecommunications services&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,627&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,627&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Fees, commissions, and other, recognized over time&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;500&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;500&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;One time fees, commissions and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;566&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;566&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Software licenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;947&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;947&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Subscription maintenance and support&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,911&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,911&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Professional services and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;288&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;288&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;9,140&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;5,146&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;14,286&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Timing of revenue recognition&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Products, services, and fees recognized at a point in time&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,861&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,179&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,040&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Products, services, and fees transferred over time&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;7,279&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;3,967&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;11,246&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;9,140&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;5,146&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;14,286&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;strong&gt;&lt;em&gt;Contract balances&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; The following table provides information about receivables, contract assets, and contract liabilities from contracts with customers:&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;(In thousands)&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Receivables, which are included in trade receivables, net of allowance for credit losses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,060&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,352&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Contract assets, net of allowance for credit losses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;419&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;406&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Contract liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,038&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,372&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in"&gt;Significant changes in the contract assets and the contract liabilities balances during the period are as follows:&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Three Months Ended&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;For the Year Ended&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;(In thousands)&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31, 2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Contract&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Assets&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Contract&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Liabilities&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Contract&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Assets&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Contract&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Liabilities&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Revenue recognized that was included in the contract liability balance at the beginning of the period&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(1,916&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(3,154&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Increase due to cash received, excluding amounts recognized as revenue during the period&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,582&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,938&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Transferred to receivables from contract assets recognized at the beginning of the period, net of allowance for credit losses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(83&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(302&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Increase due to additional unamortized discounts&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;96&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;366&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;strong&gt;&lt;em&gt;Contract assets and allowance for credit losses&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Our contract assets balance consists of the Company&#x2019;s rights to consideration for work completed but not billed as of the reporting date. The contract assets are transferred to receivables when the rights become unconditional. Contract assets were as follows (in thousands):&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;Gross contract assets&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;541&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;533&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;Less: allowance for credit losses&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(122&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(127&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;Contract assets, net of allowance for credit losses&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;"&gt;419&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;"&gt;406&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px"&gt;The allowance for credit losses was as follows (in thousands):&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at December 31, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;127&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Provision&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Write-offs&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(2&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Recoveries and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(3&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at March 31, 2025&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;122&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;The allowance for credit losses is determined based on an assessment of historical collection experience using the loss-rate method as well as consideration of current and future economic conditions and changes in our loss-rate trends. We utilize a five-year lookback period to establish our estimate of expected credit losses, as our contractual terms range from three to five years. Based on that assessment, the allowance for credit losses as a percent of gross contract assets decreased to 22.5% at March 31, 2025 from 23.8% at December 31, 2024.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;strong&gt;&lt;em&gt;Transaction price allocated to the remaining performance obligations&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;The following table includes estimated revenue expected to be recognized in the future related to performance obligations that are unsatisfied (or partially unsatisfied) at the end of the reporting period from the cloud telecommunications services segment (in thousands):&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2026&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2027&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2028&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2029 and thereafter&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Desktop devices&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;621&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;621&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Telecommunications services&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;17,729&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;16,115&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;11,090&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;6,695&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;2,433&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;54,062&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Software Solutions&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;11,933&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;7,699&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;4,962&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;1,409&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;1,263&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;27,266&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;30,283&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;23,814&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;16,052&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;8,104&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;3,696&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;81,949&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;All consideration from contracts with customers is included in the amounts presented above&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:DisaggregationOfRevenueTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_816">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Three Months Ended March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Cloud&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Software&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;(In thousands)&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Telecommunications&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Solutions&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Reportable&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segments&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Major products/services lines&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Desktop devices&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,007&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,007&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Equipment financing revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;198&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;198&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Telecommunications services&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,933&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,933&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Fees, commissions, and other, recognized over time&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;598&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;598&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;One time fees, commissions and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;453&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;453&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Software licenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,011&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,011&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Subscription maintenance and support&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,587&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,587&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Professional services and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;270&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;270&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;9,189&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;6,868&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;16,057&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Timing of revenue recognition&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Products, services, and fees recognized at a point in time&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,460&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,281&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,741&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Products, services, and fees transferred over time&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;7,729&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;4,587&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;12,316&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;9,189&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;6,868&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;16,057&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Three Months Ended March 31, 2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Cloud&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Software&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;(In thousands)&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Telecommunications&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Solutions&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Reportable&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segments&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Major products/services lines&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Desktop devices&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,295&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,295&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Equipment financing revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;152&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;152&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Telecommunications services&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,627&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,627&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Fees, commissions, and other, recognized over time&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;500&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;500&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;One time fees, commissions and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;566&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;566&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Software licenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;947&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;947&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Subscription maintenance and support&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,911&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,911&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Professional services and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;288&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;288&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;9,140&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;5,146&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;14,286&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Timing of revenue recognition&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Products, services, and fees recognized at a point in time&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,861&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,179&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,040&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Products, services, and fees transferred over time&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;7,279&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;3,967&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;11,246&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;9,140&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;5,146&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;14,286&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <cxdo:DesktopServices
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1921"
      unitRef="USD">1007000</cxdo:DesktopServices>
    <cxdo:DesktopServices
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1945"
      unitRef="USD">0</cxdo:DesktopServices>
    <cxdo:DesktopServices
      contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1969"
      unitRef="USD">1007000</cxdo:DesktopServices>
    <cxdo:InterestReceivedOnEquipmentFinancing
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1922"
      unitRef="USD">198000</cxdo:InterestReceivedOnEquipmentFinancing>
    <cxdo:InterestReceivedOnEquipmentFinancing
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1946"
      unitRef="USD">0</cxdo:InterestReceivedOnEquipmentFinancing>
    <cxdo:InterestReceivedOnEquipmentFinancing
      contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1970"
      unitRef="USD">198000</cxdo:InterestReceivedOnEquipmentFinancing>
    <cxdo:TelecommunicationsServices
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1923"
      unitRef="USD">6933000</cxdo:TelecommunicationsServices>
    <cxdo:TelecommunicationsServices
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1947"
      unitRef="USD">0</cxdo:TelecommunicationsServices>
    <cxdo:TelecommunicationsServices
      contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1971"
      unitRef="USD">6933000</cxdo:TelecommunicationsServices>
    <cxdo:FeesCommissionsAndOtherRecognizedOverTime
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1924"
      unitRef="USD">598000</cxdo:FeesCommissionsAndOtherRecognizedOverTime>
    <cxdo:FeesCommissionsAndOtherRecognizedOverTime
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1948"
      unitRef="USD">0</cxdo:FeesCommissionsAndOtherRecognizedOverTime>
    <cxdo:FeesCommissionsAndOtherRecognizedOverTime
      contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1972"
      unitRef="USD">598000</cxdo:FeesCommissionsAndOtherRecognizedOverTime>
    <cxdo:OneTimeFeesCommissionsAndOther
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1925"
      unitRef="USD">453000</cxdo:OneTimeFeesCommissionsAndOther>
    <cxdo:OneTimeFeesCommissionsAndOther
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1949"
      unitRef="USD">0</cxdo:OneTimeFeesCommissionsAndOther>
    <cxdo:OneTimeFeesCommissionsAndOther
      contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1973"
      unitRef="USD">453000</cxdo:OneTimeFeesCommissionsAndOther>
    <cxdo:SoftwareLicenses
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1926"
      unitRef="USD">0</cxdo:SoftwareLicenses>
    <cxdo:SoftwareLicenses
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1950"
      unitRef="USD">2011000</cxdo:SoftwareLicenses>
    <cxdo:SoftwareLicenses
      contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1974"
      unitRef="USD">2011000</cxdo:SoftwareLicenses>
    <cxdo:SubscriptionMaintenanceAndSupport
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1927"
      unitRef="USD">0</cxdo:SubscriptionMaintenanceAndSupport>
    <cxdo:SubscriptionMaintenanceAndSupport
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1951"
      unitRef="USD">4587000</cxdo:SubscriptionMaintenanceAndSupport>
    <cxdo:SubscriptionMaintenanceAndSupport
      contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1975"
      unitRef="USD">4587000</cxdo:SubscriptionMaintenanceAndSupport>
    <us-gaap:ProfessionalFees
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1928"
      unitRef="USD">0</us-gaap:ProfessionalFees>
    <us-gaap:ProfessionalFees
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1952"
      unitRef="USD">270000</us-gaap:ProfessionalFees>
    <us-gaap:ProfessionalFees
      contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1976"
      unitRef="USD">270000</us-gaap:ProfessionalFees>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1929"
      unitRef="USD">9189000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1953"
      unitRef="USD">6868000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1977"
      unitRef="USD">16057000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1930"
      unitRef="USD">1460000</cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime>
    <cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1954"
      unitRef="USD">2281000</cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime>
    <cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime
      contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1978"
      unitRef="USD">3741000</cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime>
    <cxdo:ProductsServicesAndFeesTransferredOverTime
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1931"
      unitRef="USD">7729000</cxdo:ProductsServicesAndFeesTransferredOverTime>
    <cxdo:ProductsServicesAndFeesTransferredOverTime
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1955"
      unitRef="USD">4587000</cxdo:ProductsServicesAndFeesTransferredOverTime>
    <cxdo:ProductsServicesAndFeesTransferredOverTime
      contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1979"
      unitRef="USD">12316000</cxdo:ProductsServicesAndFeesTransferredOverTime>
    <cxdo:RevenueRecognition
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1932"
      unitRef="USD">9189000</cxdo:RevenueRecognition>
    <cxdo:RevenueRecognition
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1956"
      unitRef="USD">6868000</cxdo:RevenueRecognition>
    <cxdo:RevenueRecognition
      contextRef="From2025-01-01to2025-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1980"
      unitRef="USD">16057000</cxdo:RevenueRecognition>
    <cxdo:DesktopServices
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1933"
      unitRef="USD">1295000</cxdo:DesktopServices>
    <cxdo:DesktopServices
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1957"
      unitRef="USD">0</cxdo:DesktopServices>
    <cxdo:DesktopServices
      contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1981"
      unitRef="USD">1295000</cxdo:DesktopServices>
    <cxdo:InterestReceivedOnEquipmentFinancing
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1934"
      unitRef="USD">152000</cxdo:InterestReceivedOnEquipmentFinancing>
    <cxdo:InterestReceivedOnEquipmentFinancing
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1958"
      unitRef="USD">0</cxdo:InterestReceivedOnEquipmentFinancing>
    <cxdo:InterestReceivedOnEquipmentFinancing
      contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1982"
      unitRef="USD">152000</cxdo:InterestReceivedOnEquipmentFinancing>
    <cxdo:TelecommunicationsServices
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1935"
      unitRef="USD">6627000</cxdo:TelecommunicationsServices>
    <cxdo:TelecommunicationsServices
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1959"
      unitRef="USD">0</cxdo:TelecommunicationsServices>
    <cxdo:TelecommunicationsServices
      contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1983"
      unitRef="USD">6627000</cxdo:TelecommunicationsServices>
    <cxdo:FeesCommissionsAndOtherRecognizedOverTime
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1936"
      unitRef="USD">500000</cxdo:FeesCommissionsAndOtherRecognizedOverTime>
    <cxdo:FeesCommissionsAndOtherRecognizedOverTime
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1960"
      unitRef="USD">0</cxdo:FeesCommissionsAndOtherRecognizedOverTime>
    <cxdo:FeesCommissionsAndOtherRecognizedOverTime
      contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1984"
      unitRef="USD">500000</cxdo:FeesCommissionsAndOtherRecognizedOverTime>
    <cxdo:OneTimeFeesCommissionsAndOther
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1937"
      unitRef="USD">566000</cxdo:OneTimeFeesCommissionsAndOther>
    <cxdo:OneTimeFeesCommissionsAndOther
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1961"
      unitRef="USD">0</cxdo:OneTimeFeesCommissionsAndOther>
    <cxdo:OneTimeFeesCommissionsAndOther
      contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1985"
      unitRef="USD">566000</cxdo:OneTimeFeesCommissionsAndOther>
    <cxdo:SoftwareLicenses
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1938"
      unitRef="USD">0</cxdo:SoftwareLicenses>
    <cxdo:SoftwareLicenses
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1962"
      unitRef="USD">947000</cxdo:SoftwareLicenses>
    <cxdo:SoftwareLicenses
      contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1986"
      unitRef="USD">947000</cxdo:SoftwareLicenses>
    <cxdo:SubscriptionMaintenanceAndSupport
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1939"
      unitRef="USD">0</cxdo:SubscriptionMaintenanceAndSupport>
    <cxdo:SubscriptionMaintenanceAndSupport
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1963"
      unitRef="USD">3911000</cxdo:SubscriptionMaintenanceAndSupport>
    <cxdo:SubscriptionMaintenanceAndSupport
      contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1987"
      unitRef="USD">3911000</cxdo:SubscriptionMaintenanceAndSupport>
    <us-gaap:ProfessionalFees
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1940"
      unitRef="USD">0</us-gaap:ProfessionalFees>
    <us-gaap:ProfessionalFees
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1964"
      unitRef="USD">288000</us-gaap:ProfessionalFees>
    <us-gaap:ProfessionalFees
      contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1988"
      unitRef="USD">288000</us-gaap:ProfessionalFees>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1941"
      unitRef="USD">9140000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1965"
      unitRef="USD">5146000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1989"
      unitRef="USD">14286000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1942"
      unitRef="USD">1861000</cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime>
    <cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1966"
      unitRef="USD">1179000</cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime>
    <cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime
      contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1990"
      unitRef="USD">3040000</cxdo:ProductsServicesAndFeesRecognizedAtAPointInTime>
    <cxdo:ProductsServicesAndFeesTransferredOverTime
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1943"
      unitRef="USD">7279000</cxdo:ProductsServicesAndFeesTransferredOverTime>
    <cxdo:ProductsServicesAndFeesTransferredOverTime
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1967"
      unitRef="USD">3967000</cxdo:ProductsServicesAndFeesTransferredOverTime>
    <cxdo:ProductsServicesAndFeesTransferredOverTime
      contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1991"
      unitRef="USD">11246000</cxdo:ProductsServicesAndFeesTransferredOverTime>
    <cxdo:RevenueRecognition
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsSegmentMember"
      decimals="-3"
      id="fid_1944"
      unitRef="USD">9140000</cxdo:RevenueRecognition>
    <cxdo:RevenueRecognition
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsSegmentMember"
      decimals="-3"
      id="fid_1968"
      unitRef="USD">5146000</cxdo:RevenueRecognition>
    <cxdo:RevenueRecognition
      contextRef="From2024-01-01to2024-03-31_cxdo_ReportableSegmentMember"
      decimals="-3"
      id="fid_1992"
      unitRef="USD">14286000</cxdo:RevenueRecognition>
    <us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_817">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;(In thousands)&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Receivables, which are included in trade receivables, net of allowance for credit losses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,060&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,352&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Contract assets, net of allowance for credit losses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;419&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;406&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Contract liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,038&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,372&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock>
    <us-gaap:OtherReceivables
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1996"
      unitRef="USD">4060000</us-gaap:OtherReceivables>
    <us-gaap:OtherReceivables
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1993"
      unitRef="USD">4352000</us-gaap:OtherReceivables>
    <us-gaap:DepositContractsAssets
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1997"
      unitRef="USD">419000</us-gaap:DepositContractsAssets>
    <us-gaap:DepositContractsAssets
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1994"
      unitRef="USD">406000</us-gaap:DepositContractsAssets>
    <us-gaap:DepositContractsLiabilities
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1998"
      unitRef="USD">3038000</us-gaap:DepositContractsLiabilities>
    <us-gaap:DepositContractsLiabilities
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1995"
      unitRef="USD">3372000</us-gaap:DepositContractsLiabilities>
    <cxdo:ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_818">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Three Months Ended&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;For the Year Ended&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;(In thousands)&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31, 2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Contract&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Assets&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Contract&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Liabilities&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Contract&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Assets&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Contract&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Liabilities&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Revenue recognized that was included in the contract liability balance at the beginning of the period&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(1,916&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(3,154&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Increase due to cash received, excluding amounts recognized as revenue during the period&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,582&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,938&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Transferred to receivables from contract assets recognized at the beginning of the period, net of allowance for credit losses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(83&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(302&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Increase due to additional unamortized discounts&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;96&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;366&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</cxdo:ChangesInContractWithCustomerAssetAndLiabilityTableTextBlock>
    <cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance
      contextRef="From2025-01-01to2025-03-31_cxdo_ContractAssetsMember"
      decimals="-3"
      id="fid_2007"
      unitRef="USD">0</cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance>
    <cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance
      contextRef="From2025-01-01to2025-03-31_cxdo_ContractLiabilitiesMember"
      decimals="-3"
      id="fid_2011"
      unitRef="USD">-1916000</cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance>
    <cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance
      contextRef="From2024-01-01to2024-12-31_cxdo_ContractAssetsMember"
      decimals="-3"
      id="fid_1999"
      unitRef="USD">0</cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance>
    <cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance
      contextRef="From2024-01-01to2024-12-31_cxdo_ContractLiabilitiesMember"
      decimals="-3"
      id="fid_2000"
      unitRef="USD">-3154000</cxdo:RevenueRecognizedThatWasIncludedInContractLiabilityBalance>
    <cxdo:IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue
      contextRef="From2025-01-01to2025-03-31_cxdo_ContractAssetsMember"
      decimals="-3"
      id="fid_2008"
      unitRef="USD">0</cxdo:IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue>
    <cxdo:IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue
      contextRef="From2025-01-01to2025-03-31_cxdo_ContractLiabilitiesMember"
      decimals="-3"
      id="fid_2012"
      unitRef="USD">1582000</cxdo:IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue>
    <cxdo:IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue
      contextRef="From2024-01-01to2024-12-31_cxdo_ContractAssetsMember"
      decimals="-3"
      id="fid_2001"
      unitRef="USD">0</cxdo:IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue>
    <cxdo:IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue
      contextRef="From2024-01-01to2024-12-31_cxdo_ContractLiabilitiesMember"
      decimals="-3"
      id="fid_2002"
      unitRef="USD">3938000</cxdo:IncreaseDueToCashReceivedExcludingAmountsRecognizedAsRevenue>
    <cxdo:TransferredToReceivablesFromContractAssetsRecognized
      contextRef="From2025-01-01to2025-03-31_cxdo_ContractAssetsMember"
      decimals="-3"
      id="fid_2009"
      unitRef="USD">-83000</cxdo:TransferredToReceivablesFromContractAssetsRecognized>
    <cxdo:TransferredToReceivablesFromContractAssetsRecognized
      contextRef="From2025-01-01to2025-03-31_cxdo_ContractLiabilitiesMember"
      decimals="-3"
      id="fid_2013"
      unitRef="USD">0</cxdo:TransferredToReceivablesFromContractAssetsRecognized>
    <cxdo:TransferredToReceivablesFromContractAssetsRecognized
      contextRef="From2024-01-01to2024-12-31_cxdo_ContractAssetsMember"
      decimals="-3"
      id="fid_2003"
      unitRef="USD">-302000</cxdo:TransferredToReceivablesFromContractAssetsRecognized>
    <cxdo:TransferredToReceivablesFromContractAssetsRecognized
      contextRef="From2024-01-01to2024-12-31_cxdo_ContractLiabilitiesMember"
      decimals="-3"
      id="fid_2004"
      unitRef="USD">0</cxdo:TransferredToReceivablesFromContractAssetsRecognized>
    <cxdo:IncreaseDueToAdditionalUnamortizedDiscounts
      contextRef="From2025-01-01to2025-03-31_cxdo_ContractAssetsMember"
      decimals="-3"
      id="fid_2010"
      unitRef="USD">96000</cxdo:IncreaseDueToAdditionalUnamortizedDiscounts>
    <cxdo:IncreaseDueToAdditionalUnamortizedDiscounts
      contextRef="From2025-01-01to2025-03-31_cxdo_ContractLiabilitiesMember"
      decimals="-3"
      id="fid_2014"
      unitRef="USD">0</cxdo:IncreaseDueToAdditionalUnamortizedDiscounts>
    <cxdo:IncreaseDueToAdditionalUnamortizedDiscounts
      contextRef="From2024-01-01to2024-12-31_cxdo_ContractAssetsMember"
      decimals="-3"
      id="fid_2005"
      unitRef="USD">366000</cxdo:IncreaseDueToAdditionalUnamortizedDiscounts>
    <cxdo:IncreaseDueToAdditionalUnamortizedDiscounts
      contextRef="From2024-01-01to2024-12-31_cxdo_ContractLiabilitiesMember"
      decimals="-3"
      id="fid_2006"
      unitRef="USD">0</cxdo:IncreaseDueToAdditionalUnamortizedDiscounts>
    <us-gaap:ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_819">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;Gross contract assets&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;541&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;533&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;Less: allowance for credit losses&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(122&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 1pt solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(127&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;Contract assets, net of allowance for credit losses&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;"&gt;419&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-TOP: medium none; BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;"&gt;406&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:ContractWithCustomerAssetAllowanceForCreditLossTableTextBlock>
    <cxdo:DepositContractsAssetsGross
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2015"
      unitRef="USD">541000</cxdo:DepositContractsAssetsGross>
    <cxdo:DepositContractsAssetsGross
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2016"
      unitRef="USD">533000</cxdo:DepositContractsAssetsGross>
    <cxdo:AllowanceforcreditlossesofContractAssets
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2017"
      unitRef="USD">122000</cxdo:AllowanceforcreditlossesofContractAssets>
    <cxdo:AllowanceforcreditlossesofContractAssets
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2018"
      unitRef="USD">127000</cxdo:AllowanceforcreditlossesofContractAssets>
    <us-gaap:DepositContractsAssets
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2019"
      unitRef="USD">419000</us-gaap:DepositContractsAssets>
    <us-gaap:DepositContractsAssets
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2020"
      unitRef="USD">406000</us-gaap:DepositContractsAssets>
    <us-gaap:SecuritiesBorrowedAllowanceForCreditLossTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_820">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at December 31, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;127&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Provision&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Write-offs&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(2&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Recoveries and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(3&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at March 31, 2025&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;122&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:SecuritiesBorrowedAllowanceForCreditLossTableTextBlock>
    <cxdo:AllowancesForCreditLossesOfContractAssets
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_2025"
      unitRef="USD">127000</cxdo:AllowancesForCreditLossesOfContractAssets>
    <cxdo:AllowanceForCreditLossesOfContractAssetsProvision
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2021"
      unitRef="USD">0</cxdo:AllowanceForCreditLossesOfContractAssetsProvision>
    <cxdo:FinancingReceivableAllowancesForCreditLossesWriteOffs
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2022"
      unitRef="USD">2000</cxdo:FinancingReceivableAllowancesForCreditLossesWriteOffs>
    <cxdo:FinancingReceivableAllowanceForCreditLossesRecoveryOthers
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_2023"
      unitRef="USD">-3000</cxdo:FinancingReceivableAllowanceForCreditLossesRecoveryOthers>
    <cxdo:AllowanceForCreditLossesOfContractAssets
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2024"
      unitRef="USD">122000</cxdo:AllowanceForCreditLossesOfContractAssets>
    <cxdo:AllowanceForCreditLossesDescriptionOfPeriod contextRef="From2025-01-01to2025-03-31" id="fid_2052">We utilize a five-year lookback period to establish our estimate of expected credit losses, as our contractual terms range from three to five years</cxdo:AllowanceForCreditLossesDescriptionOfPeriod>
    <cxdo:AllowanceForCreditLossesAsPercentOfGrossContractAssets
      contextRef="AsOf2025-03-31"
      decimals="INF"
      id="fid_2051"
      unitRef="Pure">0.225</cxdo:AllowanceForCreditLossesAsPercentOfGrossContractAssets>
    <cxdo:AllowanceForCreditLossesAsPercentOfGrossContractAssets
      contextRef="AsOf2024-12-31"
      decimals="INF"
      id="fid_2050"
      unitRef="Pure">0.238</cxdo:AllowanceForCreditLossesAsPercentOfGrossContractAssets>
    <us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_821">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2026&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2027&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2028&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2029 and thereafter&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: #000000 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Desktop devices&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;621&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;621&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Telecommunications services&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;17,729&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;16,115&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;11,090&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;6,695&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;2,433&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;54,062&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Software Solutions&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;11,933&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;7,699&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;4,962&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;1,409&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;1,263&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;27,266&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;30,283&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;23,814&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;16,052&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;8,104&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;3,696&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;81,949&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;All consideration from contracts with customers is included in the amounts presented above&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock>
    <us-gaap:PurchaseObligationDueInSecondYear
      contextRef="AsOf2025-03-31_cxdo_DesktopDevicesMember"
      decimals="-3"
      id="fid_2033"
      unitRef="USD">621000</us-gaap:PurchaseObligationDueInSecondYear>
    <us-gaap:PurchaseObligationDueInThirdYear
      contextRef="AsOf2025-03-31_cxdo_DesktopDevicesMember"
      decimals="-3"
      id="fid_2034"
      unitRef="USD">0</us-gaap:PurchaseObligationDueInThirdYear>
    <us-gaap:PurchaseObligationDueInFourthYear
      contextRef="AsOf2025-03-31_cxdo_DesktopDevicesMember"
      decimals="-3"
      id="fid_2035"
      unitRef="USD">0</us-gaap:PurchaseObligationDueInFourthYear>
    <us-gaap:PurchaseObligationDueInFifthYear
      contextRef="AsOf2025-03-31_cxdo_DesktopDevicesMember"
      decimals="-3"
      id="fid_2036"
      unitRef="USD">0</us-gaap:PurchaseObligationDueInFifthYear>
    <us-gaap:PurchaseObligationDueAfterFifthYear
      contextRef="AsOf2025-03-31_cxdo_DesktopDevicesMember"
      decimals="-3"
      id="fid_2037"
      unitRef="USD">0</us-gaap:PurchaseObligationDueAfterFifthYear>
    <us-gaap:PurchaseObligation
      contextRef="AsOf2025-03-31_cxdo_DesktopDevicesMember"
      decimals="-3"
      id="fid_2038"
      unitRef="USD">621000</us-gaap:PurchaseObligation>
    <us-gaap:PurchaseObligationDueInSecondYear
      contextRef="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember"
      decimals="-3"
      id="fid_2026"
      unitRef="USD">17729000</us-gaap:PurchaseObligationDueInSecondYear>
    <us-gaap:PurchaseObligationDueInThirdYear
      contextRef="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember"
      decimals="-3"
      id="fid_2039"
      unitRef="USD">16115000</us-gaap:PurchaseObligationDueInThirdYear>
    <us-gaap:PurchaseObligationDueInFourthYear
      contextRef="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember"
      decimals="-3"
      id="fid_2040"
      unitRef="USD">11090000</us-gaap:PurchaseObligationDueInFourthYear>
    <us-gaap:PurchaseObligationDueInFifthYear
      contextRef="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember"
      decimals="-3"
      id="fid_2041"
      unitRef="USD">6695000</us-gaap:PurchaseObligationDueInFifthYear>
    <us-gaap:PurchaseObligationDueAfterFifthYear
      contextRef="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember"
      decimals="-3"
      id="fid_2042"
      unitRef="USD">2433000</us-gaap:PurchaseObligationDueAfterFifthYear>
    <us-gaap:PurchaseObligation
      contextRef="AsOf2025-03-31_cxdo_TelecommunicationsServicesMember"
      decimals="-3"
      id="fid_2043"
      unitRef="USD">54062000</us-gaap:PurchaseObligation>
    <us-gaap:PurchaseObligationDueInSecondYear
      contextRef="AsOf2025-03-31_cxdo_SoftwareSolutionsMember"
      decimals="-3"
      id="fid_2044"
      unitRef="USD">11933000</us-gaap:PurchaseObligationDueInSecondYear>
    <us-gaap:PurchaseObligationDueInThirdYear
      contextRef="AsOf2025-03-31_cxdo_SoftwareSolutionsMember"
      decimals="-3"
      id="fid_2045"
      unitRef="USD">7699000</us-gaap:PurchaseObligationDueInThirdYear>
    <us-gaap:PurchaseObligationDueInFourthYear
      contextRef="AsOf2025-03-31_cxdo_SoftwareSolutionsMember"
      decimals="-3"
      id="fid_2046"
      unitRef="USD">4962000</us-gaap:PurchaseObligationDueInFourthYear>
    <us-gaap:PurchaseObligationDueInFifthYear
      contextRef="AsOf2025-03-31_cxdo_SoftwareSolutionsMember"
      decimals="-3"
      id="fid_2047"
      unitRef="USD">1409000</us-gaap:PurchaseObligationDueInFifthYear>
    <us-gaap:PurchaseObligationDueAfterFifthYear
      contextRef="AsOf2025-03-31_cxdo_SoftwareSolutionsMember"
      decimals="-3"
      id="fid_2048"
      unitRef="USD">1263000</us-gaap:PurchaseObligationDueAfterFifthYear>
    <us-gaap:PurchaseObligation
      contextRef="AsOf2025-03-31_cxdo_SoftwareSolutionsMember"
      decimals="-3"
      id="fid_2049"
      unitRef="USD">27266000</us-gaap:PurchaseObligation>
    <us-gaap:PurchaseObligationDueInSecondYear
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2027"
      unitRef="USD">30283000</us-gaap:PurchaseObligationDueInSecondYear>
    <us-gaap:PurchaseObligationDueInThirdYear
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2028"
      unitRef="USD">23814000</us-gaap:PurchaseObligationDueInThirdYear>
    <us-gaap:PurchaseObligationDueInFourthYear
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2030"
      unitRef="USD">16052000</us-gaap:PurchaseObligationDueInFourthYear>
    <us-gaap:PurchaseObligationDueInFifthYear
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2029"
      unitRef="USD">8104000</us-gaap:PurchaseObligationDueInFifthYear>
    <us-gaap:PurchaseObligationDueAfterFifthYear
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2031"
      unitRef="USD">3696000</us-gaap:PurchaseObligationDueAfterFifthYear>
    <us-gaap:PurchaseObligation
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_2032"
      unitRef="USD">81949000</us-gaap:PurchaseObligation>
    <us-gaap:EarningsPerShareTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_760">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;strong&gt;3. Earnings Per Common Share&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;"&gt;Basic net income/(loss) per common share is computed by dividing the net income for the period by the weighted-average number of common shares outstanding during the period. Diluted net income per common share is computed giving effect to all dilutive common stock equivalents, consisting of common stock options. The following table sets forth the computation of basic and diluted net income per common share:&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Three Months Ended&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;Net income/(loss) (in thousands) (A)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,171&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;434&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;Weighted-average share reconciliation:&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;Weighted-average basic shares outstanding (B)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;28,024,280&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;26,314,903&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;Dilutive effect of stock-based awards&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;3,068,495&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;3,827,197&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;Diluted weighted-average outstanding shares of common stock (C)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;31,092,775&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;30,142,100&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Earnings per common share:&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;Basic (A/B)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;0.04&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;0.02&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;Diluted (A/C)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;0.04&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;0.01&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;For the three months ended March 31, 2025 and 2024, the following potentially dilutive common stock, including awards granted under our equity incentive compensation plans, were excluded from the computation of diluted net income per share because including them would be anti-dilutive. &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Three Months Ended&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Stock options&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,303,571&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,317,937&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_822">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Three Months Ended&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;Net income/(loss) (in thousands) (A)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,171&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;434&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;Weighted-average share reconciliation:&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;Weighted-average basic shares outstanding (B)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;28,024,280&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;26,314,903&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;Dilutive effect of stock-based awards&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;3,068,495&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;3,827,197&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;Diluted weighted-average outstanding shares of common stock (C)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;31,092,775&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;30,142,100&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Earnings per common share:&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;Basic (A/B)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;0.04&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;0.02&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;Diluted (A/C)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;0.04&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;0.01&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_156"
      unitRef="USD">1171000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_155"
      unitRef="USD">434000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2025-01-01to2025-03-31"
      decimals="0"
      id="fid_167"
      unitRef="Shares">28024280</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="From2024-01-01to2024-03-31"
      decimals="0"
      id="fid_166"
      unitRef="Shares">26314903</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <cxdo:DilutiveEffectOfStockBasedAwards
      contextRef="From2025-01-01to2025-03-31"
      decimals="0"
      id="fid_290"
      unitRef="Shares">3068495</cxdo:DilutiveEffectOfStockBasedAwards>
    <cxdo:DilutiveEffectOfStockBasedAwards
      contextRef="From2024-01-01to2024-03-31"
      decimals="0"
      id="fid_289"
      unitRef="Shares">3827197</cxdo:DilutiveEffectOfStockBasedAwards>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2025-01-01to2025-03-31"
      decimals="0"
      id="fid_169"
      unitRef="Shares">31092775</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="From2024-01-01to2024-03-31"
      decimals="0"
      id="fid_168"
      unitRef="Shares">30142100</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2025-01-01to2025-03-31"
      decimals="INF"
      id="fid_172"
      unitRef="USDPShares">0.04</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="From2024-01-01to2024-03-31"
      decimals="INF"
      id="fid_171"
      unitRef="USDPShares">0.02</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2025-01-01to2025-03-31"
      decimals="INF"
      id="fid_182"
      unitRef="USDPShares">0.04</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="From2024-01-01to2024-03-31"
      decimals="INF"
      id="fid_181"
      unitRef="USDPShares">0.01</us-gaap:EarningsPerShareDiluted>
    <us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_823">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Three Months Ended&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Stock options&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,303,571&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,317,937&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="From2025-01-01to2025-03-31_us-gaap_StockOptionMember"
      decimals="0"
      id="fid_192"
      unitRef="Shares">1303571</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="From2024-01-01to2024-03-31_us-gaap_StockOptionMember"
      decimals="0"
      id="fid_191"
      unitRef="Shares">1317937</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AllowanceForCreditLossesTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_761">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;strong&gt;4. Trade Receivables and Allowance for Credit Losses&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Our trade receivables balance consists of traditional trade receivables. Trade receivables were as follows (in thousands):&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Gross trade receivables&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,225&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,498&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: allowance for credit losses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(165&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(146&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Trade receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;4,060&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;4,352&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Current trade receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,060&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,352&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Long-term trade receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Trade receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;4,060&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;4,352&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px"&gt;The allowance for credit losses was as follows (in thousands):&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at December 31, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;146&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Provision&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;48&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Write-offs&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(31&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Recoveries and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at March 31, 2025&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;165&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:center;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;The allowance for credit losses is determined based on an assessment of historical collection experience using the aging schedule method as well as consideration of current and future economic conditions. Based on that assessment, the allowance for credit losses as a percentage of gross accounts receivable increased to 3.9% at March 31, 2025 from 3.3% at December 31, 2024.&lt;/p&gt;</us-gaap:AllowanceForCreditLossesTextBlock>
    <cxdo:ScheduleOFtradeReceivablesTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_827">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Gross trade receivables&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,225&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,498&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: allowance for credit losses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(165&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(146&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Trade receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;4,060&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;4,352&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Current trade receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,060&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,352&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Long-term trade receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Trade receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;4,060&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;4,352&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</cxdo:ScheduleOFtradeReceivablesTableTextBlock>
    <us-gaap:AccountsReceivableGross
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_193"
      unitRef="USD">4225000</us-gaap:AccountsReceivableGross>
    <us-gaap:AccountsReceivableGross
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_194"
      unitRef="USD">4498000</us-gaap:AccountsReceivableGross>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_195"
      unitRef="USD">165000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_196"
      unitRef="USD">146000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_197"
      unitRef="USD">4060000</us-gaap:AccountsReceivableNet>
    <us-gaap:AccountsReceivableNet
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_198"
      unitRef="USD">4352000</us-gaap:AccountsReceivableNet>
    <us-gaap:NontradeReceivablesCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_199"
      unitRef="USD">4060000</us-gaap:NontradeReceivablesCurrent>
    <us-gaap:NontradeReceivablesCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_200"
      unitRef="USD">4352000</us-gaap:NontradeReceivablesCurrent>
    <us-gaap:LongTermInvestmentsAndReceivablesNet
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_201"
      unitRef="USD">0</us-gaap:LongTermInvestmentsAndReceivablesNet>
    <us-gaap:LongTermInvestmentsAndReceivablesNet
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_202"
      unitRef="USD">0</us-gaap:LongTermInvestmentsAndReceivablesNet>
    <cxdo:TradeReceivablesNet
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_203"
      unitRef="USD">4060000</cxdo:TradeReceivablesNet>
    <cxdo:TradeReceivablesNet
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_204"
      unitRef="USD">4352000</cxdo:TradeReceivablesNet>
    <cxdo:ScheduleOfAllowanceForCreditLossestableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_828">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at December 31, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;146&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Provision&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;48&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Write-offs&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(31&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Recoveries and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at March 31, 2025&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;165&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</cxdo:ScheduleOfAllowanceForCreditLossestableTextBlock>
    <us-gaap:NetInvestmentInLeaseAllowanceForCreditLossCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_208"
      unitRef="USD">146000</us-gaap:NetInvestmentInLeaseAllowanceForCreditLossCurrent>
    <us-gaap:ProvisionForOtherCreditLosses
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_214"
      unitRef="USD">48000</us-gaap:ProvisionForOtherCreditLosses>
    <cxdo:AllowanceForLoansAndLeaseLossesWriteOffs
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_218"
      unitRef="USD">31000</cxdo:AllowanceForLoansAndLeaseLossesWriteOffs>
    <us-gaap:ReinsuranceCostsAndRecoveriesNet
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_222"
      unitRef="USD">2000</us-gaap:ReinsuranceCostsAndRecoveriesNet>
    <us-gaap:NetInvestmentInLeaseAllowanceForCreditLossCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_227"
      unitRef="USD">165000</us-gaap:NetInvestmentInLeaseAllowanceForCreditLossCurrent>
    <cxdo:AccountsPercentageOfAccountsReceivable
      contextRef="AsOf2025-03-31"
      decimals="INF"
      id="fid_228"
      unitRef="Pure">0.039</cxdo:AccountsPercentageOfAccountsReceivable>
    <cxdo:AccountsPercentageOfAccountsReceivable
      contextRef="AsOf2024-12-31"
      decimals="INF"
      id="fid_229"
      unitRef="Pure">0.033</cxdo:AccountsPercentageOfAccountsReceivable>
    <cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_762">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;strong&gt;5. Equipment Financing Receivables and Allowance for Credit Losses&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Our equipment financing receivables balance consists of sales-type leases arising from lease financing of cloud telecommunication equipment (IP or cloud telephone desktop devices) bundled and sold with our cloud telecommunications services. The majority of our leases that qualify as sales-type leases are non-cancelable and include cancellation penalties approximately equal to the full value of the lease receivables. Revenue from sales-type leases is recognized upon installation and the interest portion is deferred and recognized as earned. These receivables are typically collateralized by a security interest in the underlying equipment. Equipment financing receivables were as follows (in thousands):&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Gross equipment financing receivables&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;5,291&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;5,164&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: unearned income&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(1,504&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(1,492&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: allowance for credit losses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(100&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(226&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Equipment financing receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;3,687&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;3,446&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Current equipment financing receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,138&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,049&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Long-term equipment financing&#160; receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2,549&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2,397&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Equipment financing receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;3,687&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;3,446&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160; &lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; A summary of our gross equipment financing receivables&#x2019; future contractual maturities, is as follows (in thousands):&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Year ending December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2025 remaining&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,416&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2026&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,579&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2027&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,222&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2028&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;748&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2029&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;326&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2030 and thereafter&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;5,291&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;em&gt;Allowance for Credit Losses&lt;/em&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in"&gt;The allowance for credit losses was as follows (in thousands):&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at December 31, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;226&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Provision&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Write-offs&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(8&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Recoveries and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(118&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at March 31, 2025&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;100&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160; &lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;em&gt;Aging of Receivables&lt;/em&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px"&gt;The aging of gross equipment financing receivables was as follows (in thousands):&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Past due amounts 0 - 90 days&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,677&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,444&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Past due amounts &amp;gt; 90 days&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;10&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;3,687&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;3,446&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160; &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Our equipment financing receivable portfolio is primarily in the United States. The allowance for credit losses is determined principally based on an assessment of origination year and past collection experience as well as consideration of current and future economic conditions and changes in our customer collection trends. Based on that assessment, the allowance for credit losses as a percentage of gross equipment financing receivables (net of unearned income) decreased to 2.7% at March 31, 2025 from 6.1% at December 31, 2024.&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in"&gt;The allowance for credit losses represents an estimate of the losses expected to be incurred from the Company's equipment financing receivable portfolio. The projected loss rates are primarily based upon historical loss experience adjusted for judgments about the probable effects of relevant observable data including current and future economic conditions as well as delinquency trends, resolution rates, and the aging of receivables. The allowance for credit losses for equipment finance receivables is inherently more difficult to estimate than the allowance for trade receivables because the underlying lease portfolio has an average maturity, at any time, of approximately three to five years and contains unbilled amounts. We consider all available information in our quarterly assessments of the adequacy of the allowance for credit losses. We believe our estimates, including any qualitative adjustments, are reasonable and have considered all reasonably available information about past events, current conditions, and reasonable and supportable forecasts of future events and economic conditions. The identification of account-specific exposure is not a significant factor in establishing the allowance for credit losses for equipment finance receivables. We continue to monitor developments in future economic conditions and trends, and as a result, our reserve may need to be updated in future periods.&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in"&gt;The table below shows gross equipment financing receivables and current period gross write offs by year of origination (in thousands):&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="26" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2023&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2022&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2021&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Prior&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Equipment Financing Receivables&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Equipment&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Financing&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Receivables&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;United States&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;418&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;1,749&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;1,071&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;429&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;80&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;40&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;3,787&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,672&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Current period gross write offs&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;6&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;8&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;36&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</cxdo:EquipmentFinancingReceivablesAndAllowanceForCreditLossesTextBlock>
    <us-gaap:ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_829">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Gross equipment financing receivables&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;5,291&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;5,164&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: unearned income&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(1,504&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(1,492&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: allowance for credit losses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(100&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(226&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Equipment financing receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;3,687&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;3,446&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Current equipment financing receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,138&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,049&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Long-term equipment financing&#160; receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2,549&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2,397&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Equipment financing receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;3,687&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;3,446&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:ScheduleOfFinancingReceivablesNonAccrualStatusTableTextBlock>
    <us-gaap:FinancingReceivableRevolving
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1636"
      unitRef="USD">5291000</us-gaap:FinancingReceivableRevolving>
    <us-gaap:FinancingReceivableRevolving
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1637"
      unitRef="USD">5164000</us-gaap:FinancingReceivableRevolving>
    <us-gaap:LimitedPartnersCumulativeNetIncome
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1638"
      unitRef="USD">-1504000</us-gaap:LimitedPartnersCumulativeNetIncome>
    <us-gaap:LimitedPartnersCumulativeNetIncome
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1639"
      unitRef="USD">-1492000</us-gaap:LimitedPartnersCumulativeNetIncome>
    <cxdo:LessAllowanceForCreditLosses
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1640"
      unitRef="USD">100000</cxdo:LessAllowanceForCreditLosses>
    <cxdo:LessAllowanceForCreditLosses
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1641"
      unitRef="USD">226000</cxdo:LessAllowanceForCreditLosses>
    <cxdo:FinancingReceivableAllowanceForCreditLossEquipment
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1642"
      unitRef="USD">3687000</cxdo:FinancingReceivableAllowanceForCreditLossEquipment>
    <cxdo:FinancingReceivableAllowanceForCreditLossEquipment
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1643"
      unitRef="USD">3446000</cxdo:FinancingReceivableAllowanceForCreditLossEquipment>
    <us-gaap:ReceivablesNetCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1644"
      unitRef="USD">1138000</us-gaap:ReceivablesNetCurrent>
    <us-gaap:ReceivablesNetCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1645"
      unitRef="USD">1049000</us-gaap:ReceivablesNetCurrent>
    <us-gaap:LongTermAccountsNotesAndLoansReceivableNetNoncurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1646"
      unitRef="USD">2549000</us-gaap:LongTermAccountsNotesAndLoansReceivableNetNoncurrent>
    <us-gaap:LongTermAccountsNotesAndLoansReceivableNetNoncurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1647"
      unitRef="USD">2397000</us-gaap:LongTermAccountsNotesAndLoansReceivableNetNoncurrent>
    <cxdo:LongTermInvestmentsAndReceivables
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1648"
      unitRef="USD">3687000</cxdo:LongTermInvestmentsAndReceivables>
    <cxdo:LongTermInvestmentsAndReceivables
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1649"
      unitRef="USD">3446000</cxdo:LongTermInvestmentsAndReceivables>
    <us-gaap:SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_830">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Year ending December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2025 remaining&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,416&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2026&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,579&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2027&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,222&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2028&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;748&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2029&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;326&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2030 and thereafter&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;5,291&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:SalesTypeAndDirectFinancingLeasesLeaseReceivableMaturityTableTextBlock>
    <cxdo:GrossEquipmentFinancingReceivablesNexttwelvemonths
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1650"
      unitRef="USD">1416000</cxdo:GrossEquipmentFinancingReceivablesNexttwelvemonths>
    <cxdo:GrossEquipmentFinancingReceivablesYeartwo
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1651"
      unitRef="USD">1579000</cxdo:GrossEquipmentFinancingReceivablesYeartwo>
    <cxdo:GrossEquipmentFinancingReceivablesYearthree
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1652"
      unitRef="USD">1222000</cxdo:GrossEquipmentFinancingReceivablesYearthree>
    <cxdo:GrossEquipmentFinancingReceivablesYearFour
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1653"
      unitRef="USD">748000</cxdo:GrossEquipmentFinancingReceivablesYearFour>
    <cxdo:GrossEquipmentFinancingReceivablesYearFive
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1656"
      unitRef="USD">326000</cxdo:GrossEquipmentFinancingReceivablesYearFive>
    <cxdo:GrossEquipmentFinancingReceivablesAfteryearfive
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1654"
      unitRef="USD">0</cxdo:GrossEquipmentFinancingReceivablesAfteryearfive>
    <cxdo:EquipmentFinancingReceivablesDue
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1655"
      unitRef="USD">5291000</cxdo:EquipmentFinancingReceivablesDue>
    <us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_831">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at December 31, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;226&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Provision&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Write-offs&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(8&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Recoveries and other&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(118&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at March 31, 2025&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;100&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock>
    <cxdo:AllowanceforcreditlossesofContractAssets
      contextRef="AsOf2024-12-31_cxdo_AllowanceForCreditLossesMember"
      decimals="-3"
      id="fid_1657"
      unitRef="USD">226000</cxdo:AllowanceforcreditlossesofContractAssets>
    <us-gaap:ProvisionForOtherCreditLosses
      contextRef="From2025-01-01to2025-03-31_cxdo_AllowanceForCreditLossesMember"
      decimals="-3"
      id="fid_1658"
      unitRef="USD">0</us-gaap:ProvisionForOtherCreditLosses>
    <us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs
      contextRef="From2025-01-01to2025-03-31_cxdo_AllowanceForCreditLossesMember"
      decimals="-3"
      id="fid_1659"
      unitRef="USD">8000</us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs>
    <us-gaap:FinancingReceivableAllowanceForCreditLossesRecovery
      contextRef="From2025-01-01to2025-03-31_cxdo_AllowanceForCreditLossesMember"
      decimals="-3"
      id="fid_1660"
      unitRef="USD">118000</us-gaap:FinancingReceivableAllowanceForCreditLossesRecovery>
    <cxdo:AllowanceforcreditlossesofContractAssets
      contextRef="AsOf2025-03-31_cxdo_AllowanceForCreditLossesMember"
      decimals="-3"
      id="fid_1661"
      unitRef="USD">100000</cxdo:AllowanceforcreditlossesofContractAssets>
    <cxdo:ScheduleOfAgingOfReceivablesTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_832">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Past due amounts 0 - 90 days&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,677&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,444&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Past due amounts &amp;gt; 90 days&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;10&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;3,687&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;3,446&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</cxdo:ScheduleOfAgingOfReceivablesTableTextBlock>
    <cxdo:AgingOfReceivablesAmountDues
      contextRef="AsOf2025-03-31_us-gaap_FinancingReceivables60To89DaysPastDueMember"
      decimals="-3"
      id="fid_1662"
      unitRef="USD">3677000</cxdo:AgingOfReceivablesAmountDues>
    <cxdo:AgingOfReceivablesAmountDues
      contextRef="AsOf2024-12-31_us-gaap_FinancingReceivables60To89DaysPastDueMember"
      decimals="-3"
      id="fid_1663"
      unitRef="USD">3444000</cxdo:AgingOfReceivablesAmountDues>
    <cxdo:AgingOfReceivablesAmountDues
      contextRef="AsOf2025-03-31_us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember"
      decimals="-3"
      id="fid_1664"
      unitRef="USD">10000</cxdo:AgingOfReceivablesAmountDues>
    <cxdo:AgingOfReceivablesAmountDues
      contextRef="AsOf2024-12-31_us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember"
      decimals="-3"
      id="fid_1665"
      unitRef="USD">2000</cxdo:AgingOfReceivablesAmountDues>
    <cxdo:AgingOfReceivablesDues
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1667"
      unitRef="USD">3687000</cxdo:AgingOfReceivablesDues>
    <cxdo:AgingOfReceivablesDues
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1666"
      unitRef="USD">3446000</cxdo:AgingOfReceivablesDues>
    <srt:FinancingReceivableAllowanceForCreditLossToNonaccrualPercent
      contextRef="AsOf2025-03-31"
      decimals="INF"
      id="fid_1685"
      unitRef="Pure">0.027</srt:FinancingReceivableAllowanceForCreditLossToNonaccrualPercent>
    <srt:FinancingReceivableAllowanceForCreditLossToNonaccrualPercent
      contextRef="AsOf2024-12-31"
      decimals="INF"
      id="fid_1684"
      unitRef="Pure">0.061</srt:FinancingReceivableAllowanceForCreditLossToNonaccrualPercent>
    <cxdo:ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_833">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="26" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2023&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2022&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2021&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Prior&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Equipment Financing Receivables&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Equipment&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Financing&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Receivables&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;United States&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;418&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;1,749&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;1,071&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;429&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;80&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;40&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;3,787&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,672&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Current period gross write offs&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;6&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;8&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;36&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</cxdo:ScheduleOfCurrentPeriodGrossWriteOffsTableTextBlock>
    <cxdo:TotalEquipmentFinancingReceivablesDue
      contextRef="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyFiveMember"
      decimals="-3"
      id="fid_1670"
      unitRef="USD">418000</cxdo:TotalEquipmentFinancingReceivablesDue>
    <cxdo:TotalEquipmentFinancingReceivablesDue
      contextRef="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyFourMember"
      decimals="-3"
      id="fid_1671"
      unitRef="USD">1749000</cxdo:TotalEquipmentFinancingReceivablesDue>
    <cxdo:TotalEquipmentFinancingReceivablesDue
      contextRef="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyThreeMember"
      decimals="-3"
      id="fid_1683"
      unitRef="USD">1071000</cxdo:TotalEquipmentFinancingReceivablesDue>
    <cxdo:TotalEquipmentFinancingReceivablesDue
      contextRef="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyTwoMember"
      decimals="-3"
      id="fid_1668"
      unitRef="USD">429000</cxdo:TotalEquipmentFinancingReceivablesDue>
    <cxdo:TotalEquipmentFinancingReceivablesDue
      contextRef="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_TwoThousendTwentyOneMember"
      decimals="-3"
      id="fid_1669"
      unitRef="USD">80000</cxdo:TotalEquipmentFinancingReceivablesDue>
    <cxdo:TotalEquipmentFinancingReceivablesDue
      contextRef="AsOf2025-03-31_cxdo_UnitedStateMember_cxdo_PriorMember"
      decimals="-3"
      id="fid_1672"
      unitRef="USD">40000</cxdo:TotalEquipmentFinancingReceivablesDue>
    <cxdo:TotalEquipmentFinancingReceivablesDue
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1682"
      unitRef="USD">3787000</cxdo:TotalEquipmentFinancingReceivablesDue>
    <cxdo:TotalEquipmentFinancingReceivablesDue
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1673"
      unitRef="USD">3672000</cxdo:TotalEquipmentFinancingReceivablesDue>
    <cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs
      contextRef="AsOf2025-03-31_cxdo_TwoThousendTwentyFiveMember"
      decimals="-3"
      id="fid_1677"
      unitRef="USD">0</cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs>
    <cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs
      contextRef="AsOf2025-03-31_cxdo_TwoThousendTwentyFourMember"
      decimals="-3"
      id="fid_1678"
      unitRef="USD">6000</cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs>
    <cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs
      contextRef="AsOf2025-03-31_cxdo_TwoThousendTwentyThreeMember"
      decimals="-3"
      id="fid_1674"
      unitRef="USD">2000</cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs>
    <cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs
      contextRef="AsOf2025-03-31_cxdo_TwoThousendTwentyTwoMember"
      decimals="-3"
      id="fid_1675"
      unitRef="USD">0</cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs>
    <cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs
      contextRef="AsOf2025-03-31_cxdo_TwoThousendTwentyOneMember"
      decimals="-3"
      id="fid_1676"
      unitRef="USD">0</cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs>
    <cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs
      contextRef="AsOf2025-03-31_cxdo_PriorMember"
      decimals="-3"
      id="fid_1679"
      unitRef="USD">0</cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs>
    <cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1681"
      unitRef="USD">8000</cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs>
    <cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1680"
      unitRef="USD">36000</cxdo:TotalEquipmentFinancingReceivablesDueGrossWriteOffs>
    <cxdo:PrepaidExpensesDisclosureTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_763">&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;strong&gt;6. Prepaid Expenses&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px"&gt;Prepaid expenses consisted of the following (in thousands):&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Prepaid corporate insurance&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;32&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;88&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Prepaid software services and support&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;485&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;455&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Prepaid employee insurance premiums&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;202&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Prepaid Nasdaq listing fee&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;53&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;User group meeting fees&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;103&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;86&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Prepaid rent&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;28&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;103&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Other prepaid expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;90&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;144&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Total prepaid expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;993&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;876&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</cxdo:PrepaidExpensesDisclosureTextBlock>
    <cxdo:ScheduleOfPrepaidExpensesTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_834">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Prepaid corporate insurance&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;32&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;88&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Prepaid software services and support&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;485&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;455&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Prepaid employee insurance premiums&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;202&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Prepaid Nasdaq listing fee&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;53&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;User group meeting fees&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;103&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;86&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Prepaid rent&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;28&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;103&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Other prepaid expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;90&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;144&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Total prepaid expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;993&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;876&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</cxdo:ScheduleOfPrepaidExpensesTableTextBlock>
    <us-gaap:PrepaidInsurance
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_376"
      unitRef="USD">32000</us-gaap:PrepaidInsurance>
    <us-gaap:PrepaidInsurance
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_390"
      unitRef="USD">88000</us-gaap:PrepaidInsurance>
    <cxdo:PrepaidSoftwareServices
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_378"
      unitRef="USD">485000</cxdo:PrepaidSoftwareServices>
    <cxdo:PrepaidSoftwareServices
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_391"
      unitRef="USD">455000</cxdo:PrepaidSoftwareServices>
    <us-gaap:PrepaidReinsurancePremiums
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1602"
      unitRef="USD">202000</us-gaap:PrepaidReinsurancePremiums>
    <us-gaap:PrepaidReinsurancePremiums
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1604"
      unitRef="USD">0</us-gaap:PrepaidReinsurancePremiums>
    <cxdo:PrepaidNasdaqListingFee
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1603"
      unitRef="USD">53000</cxdo:PrepaidNasdaqListingFee>
    <cxdo:PrepaidNasdaqListingFee
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1605"
      unitRef="USD">0</cxdo:PrepaidNasdaqListingFee>
    <cxdo:PrepaidexpensesForUserGroupMeeting
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_384"
      unitRef="USD">103000</cxdo:PrepaidexpensesForUserGroupMeeting>
    <cxdo:PrepaidexpensesForUserGroupMeeting
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_392"
      unitRef="USD">86000</cxdo:PrepaidexpensesForUserGroupMeeting>
    <us-gaap:AccruedRentCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_382"
      unitRef="USD">28000</us-gaap:AccruedRentCurrent>
    <us-gaap:AccruedRentCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_393"
      unitRef="USD">103000</us-gaap:AccruedRentCurrent>
    <us-gaap:OtherPrepaidExpenseCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_386"
      unitRef="USD">90000</us-gaap:OtherPrepaidExpenseCurrent>
    <us-gaap:OtherPrepaidExpenseCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_396"
      unitRef="USD">144000</us-gaap:OtherPrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssets
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_388"
      unitRef="USD">993000</us-gaap:PrepaidExpenseAndOtherAssets>
    <us-gaap:PrepaidExpenseAndOtherAssets
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_395"
      unitRef="USD">876000</us-gaap:PrepaidExpenseAndOtherAssets>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_764">&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;strong&gt;7. Property and Equipment&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px"&gt;Property and equipment consisted of the following (in thousands):&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Computer and office equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,142&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,142&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Computer software&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;589&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;589&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Internal-use software&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;14&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;14&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Vehicles&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;143&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;143&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Leasehold improvements&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;34&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;34&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: accumulated depreciation&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(2,593&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(2,528&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Total property and equipment, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;329&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;394&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160; &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Depreciation expense is included in general and administrative expenses and totaled $65 and $80 for the three months ended March 31, 2025 and 2024, respectively.&lt;/p&gt;</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_835">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Computer and office equipment&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,142&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,142&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Computer software&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;589&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;589&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Internal-use software&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;14&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;14&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Vehicles&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;143&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;143&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Leasehold improvements&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;34&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;34&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: accumulated depreciation&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(2,593&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(2,528&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Total property and equipment, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;329&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;394&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2025-03-31_us-gaap_OfficeEquipmentMember"
      decimals="-3"
      id="fid_405"
      unitRef="USD">2142000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2024-12-31_us-gaap_OfficeEquipmentMember"
      decimals="-3"
      id="fid_406"
      unitRef="USD">2142000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2025-03-31_cxdo_ComputerSoftwareIntangibleAssetsMember"
      decimals="-3"
      id="fid_407"
      unitRef="USD">589000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2024-12-31_cxdo_ComputerSoftwareIntangibleAssetsMember"
      decimals="-3"
      id="fid_408"
      unitRef="USD">589000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2025-03-31_cxdo_InternalUseComputerSoftwareMember"
      decimals="-3"
      id="fid_409"
      unitRef="USD">14000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2024-12-31_cxdo_InternalUseComputerSoftwareMember"
      decimals="-3"
      id="fid_410"
      unitRef="USD">14000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2025-03-31_us-gaap_VehiclesMember"
      decimals="-3"
      id="fid_413"
      unitRef="USD">143000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2024-12-31_us-gaap_VehiclesMember"
      decimals="-3"
      id="fid_414"
      unitRef="USD">143000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2025-03-31_us-gaap_LeaseholdImprovementsMember"
      decimals="-3"
      id="fid_415"
      unitRef="USD">34000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="AsOf2024-12-31_us-gaap_LeaseholdImprovementsMember"
      decimals="-3"
      id="fid_416"
      unitRef="USD">34000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_397"
      unitRef="USD">2593000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_398"
      unitRef="USD">2528000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_399"
      unitRef="USD">329000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_400"
      unitRef="USD">394000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_421"
      unitRef="USD">65000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_422"
      unitRef="USD">80000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_765">&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;strong&gt;8. Intangible Assets and Goodwill&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in"&gt;Acquired intangible assets subject to amortization consist of the following (in thousands):&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="10" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="10" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31, 2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Gross Carrying Amount&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Accumulated Amortization&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Net Carrying Amount&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Gross Carrying Amount&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Accumulated Amortization&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Net Carrying Amount&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Customer relationships&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;26,073&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;(7,904&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;18,169&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;26,073&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;(7,403&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;18,670&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Developed technologies&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;4,900&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;(3,263&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;1,637&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;4,900&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;(3,081&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;1,819&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Trademark and trade names&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;400&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;(384&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;16&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;400&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;(361&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;39&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Total acquired intangible assets&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;31,373&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;(11,551&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;19,822&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;31,373&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;(10,845&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;20,528&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160; &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;As of March 31, 2025, the weighted average remaining useful life for customer relationships was 12.1 years, developed technologies was 2.2 years, and trademarks and trade names was 0.2 years.&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Amortization expense for customer relationships intangible assets is included in sales and marketing expenses and totaled $501 and $527 for the three months ended March 31, 2025 and 2024, respectively. Amortization expense for developed technologies intangible assets is included in cost of software solutions revenue and totaled $182 and $203 for the three months ended March 31, 2025 and 2024, respectively. Amortization expense for trademark and trade name intangible assets is included in general and administrative expenses and totaled $23 and $30 for the three months ended March 31, 2025 and 2024, respectively.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px"&gt;As of March 31, 2025, annual amortization of definite lived intangible assets, based on existing intangible assets and current useful lives, is estimated to be the following (in thousands):&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Year ending December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2025 remaining&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,064&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2026&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,457&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2027&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,202&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2028&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,637&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2029&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,557&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2030 and thereafter&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;9,905&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;19,822&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;The following table provides a summary of changes in the carrying amounts of goodwill (in thousands):&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Goodwill&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at January 1, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;9,454&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Additions&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at December 31, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;9,454&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Additions&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Balance at March 31, 2025&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;9,454&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_836">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="10" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="10" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31, 2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Gross Carrying Amount&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Accumulated Amortization&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Net Carrying Amount&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Gross Carrying Amount&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Accumulated Amortization&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Net Carrying Amount&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Customer relationships&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;26,073&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;(7,904&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;18,169&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;26,073&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;(7,403&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;18,670&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Developed technologies&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;4,900&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;(3,263&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;1,637&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;4,900&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;(3,081&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:6%;vertical-align:bottom;text-align:right;"&gt;1,819&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Trademark and trade names&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;400&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;(384&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;16&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;400&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;(361&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:6%;vertical-align:bottom;text-align:right;"&gt;39&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Total acquired intangible assets&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;31,373&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;(11,551&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;19,822&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;31,373&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;(10,845&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:6%;vertical-align:bottom;text-align:right;"&gt;20,528&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2025-03-31_us-gaap_CustomerRelationshipsMember"
      decimals="-3"
      id="fid_947"
      unitRef="USD">26073000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2025-03-31_us-gaap_CustomerRelationshipsMember"
      decimals="-3"
      id="fid_955"
      unitRef="USD">-7904000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2025-03-31_us-gaap_CustomerRelationshipsMember"
      decimals="-3"
      id="fid_963"
      unitRef="USD">18169000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2024-12-31_us-gaap_CustomerRelationshipsMember"
      decimals="-3"
      id="fid_954"
      unitRef="USD">-7403000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2024-12-31_us-gaap_CustomerRelationshipsMember"
      decimals="-3"
      id="fid_962"
      unitRef="USD">18670000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2025-03-31_cxdo_DevelopedTechnologiesMember"
      decimals="-3"
      id="fid_949"
      unitRef="USD">4900000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2025-03-31_cxdo_DevelopedTechnologiesMember"
      decimals="-3"
      id="fid_957"
      unitRef="USD">-3263000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2025-03-31_cxdo_DevelopedTechnologiesMember"
      decimals="-3"
      id="fid_965"
      unitRef="USD">1637000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2024-12-31_cxdo_DevelopedTechnologiesMember"
      decimals="-3"
      id="fid_948"
      unitRef="USD">4900000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2024-12-31_cxdo_DevelopedTechnologiesMember"
      decimals="-3"
      id="fid_956"
      unitRef="USD">-3081000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2024-12-31_cxdo_DevelopedTechnologiesMember"
      decimals="-3"
      id="fid_964"
      unitRef="USD">1819000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2025-03-31_cxdo_TrademarkAndTradeNamesMember"
      decimals="-3"
      id="fid_951"
      unitRef="USD">400000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2025-03-31_cxdo_TrademarkAndTradeNamesMember"
      decimals="-3"
      id="fid_959"
      unitRef="USD">-384000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2025-03-31_cxdo_TrademarkAndTradeNamesMember"
      decimals="-3"
      id="fid_967"
      unitRef="USD">16000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2024-12-31_cxdo_TrademarkAndTradeNamesMember"
      decimals="-3"
      id="fid_950"
      unitRef="USD">400000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2024-12-31_cxdo_TrademarkAndTradeNamesMember"
      decimals="-3"
      id="fid_958"
      unitRef="USD">-361000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2024-12-31_cxdo_TrademarkAndTradeNamesMember"
      decimals="-3"
      id="fid_966"
      unitRef="USD">39000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2025-03-31_cxdo_TotalacquiredintangibleassetsMember"
      decimals="-3"
      id="fid_953"
      unitRef="USD">31373000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2025-03-31_cxdo_TotalacquiredintangibleassetsMember"
      decimals="-3"
      id="fid_961"
      unitRef="USD">-11551000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2025-03-31_cxdo_TotalacquiredintangibleassetsMember"
      decimals="-3"
      id="fid_969"
      unitRef="USD">19822000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross
      contextRef="AsOf2024-12-31_cxdo_TotalacquiredintangibleassetsMember"
      decimals="-3"
      id="fid_952"
      unitRef="USD">31373000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="AsOf2024-12-31_cxdo_TotalacquiredintangibleassetsMember"
      decimals="-3"
      id="fid_960"
      unitRef="USD">-10845000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2024-12-31_cxdo_TotalacquiredintangibleassetsMember"
      decimals="-3"
      id="fid_968"
      unitRef="USD">20528000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife contextRef="From2025-01-01to2025-03-31" id="fid_988">P12Y1M6D</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <cxdo:DevelopedTechnologies contextRef="From2025-01-01to2025-03-31" id="fid_986">P2Y2M12D</cxdo:DevelopedTechnologies>
    <cxdo:TrademarksAndTradeNames contextRef="From2025-01-01to2025-03-31" id="fid_987">P0Y2M12D</cxdo:TrademarksAndTradeNames>
    <cxdo:AmortizationOfIntangibleAssetsCustomerRelationships
      contextRef="From2025-01-01to2025-03-31_us-gaap_SellingAndMarketingExpenseMember"
      decimals="-3"
      id="fid_984"
      unitRef="USD">501000</cxdo:AmortizationOfIntangibleAssetsCustomerRelationships>
    <cxdo:AmortizationOfIntangibleAssetsCustomerRelationships
      contextRef="From2024-01-01to2024-03-31_us-gaap_SellingAndMarketingExpenseMember"
      decimals="-3"
      id="fid_985"
      unitRef="USD">527000</cxdo:AmortizationOfIntangibleAssetsCustomerRelationships>
    <cxdo:AmortizationOfIntangibleAssetsDevelopedTechnology
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionsRevenueMember"
      decimals="-3"
      id="fid_982"
      unitRef="USD">182000</cxdo:AmortizationOfIntangibleAssetsDevelopedTechnology>
    <cxdo:AmortizationOfIntangibleAssetsDevelopedTechnology
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionsRevenueMember"
      decimals="-3"
      id="fid_983"
      unitRef="USD">203000</cxdo:AmortizationOfIntangibleAssetsDevelopedTechnology>
    <cxdo:AmortizationOfIntangibleAssetsTrademarksAndTradeNames
      contextRef="From2025-01-01to2025-03-31_us-gaap_GeneralAndAdministrativeExpenseMember"
      decimals="-3"
      id="fid_990"
      unitRef="USD">23000</cxdo:AmortizationOfIntangibleAssetsTrademarksAndTradeNames>
    <cxdo:AmortizationOfIntangibleAssetsTrademarksAndTradeNames
      contextRef="From2024-01-01to2024-03-31_us-gaap_GeneralAndAdministrativeExpenseMember"
      decimals="-3"
      id="fid_989"
      unitRef="USD">30000</cxdo:AmortizationOfIntangibleAssetsTrademarksAndTradeNames>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_837">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Year ending December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2025 remaining&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,064&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2026&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,457&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2027&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,202&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2028&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,637&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2029&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,557&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2030 and thereafter&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;9,905&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;19,822&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_970"
      unitRef="USD">2064000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_971"
      unitRef="USD">2457000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_972"
      unitRef="USD">2202000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_973"
      unitRef="USD">1637000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1606"
      unitRef="USD">1557000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_974"
      unitRef="USD">9905000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsNet
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_975"
      unitRef="USD">19822000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <cxdo:ScheduleOfGoodwillCarryingAmountTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_838">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Goodwill&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at January 1, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;9,454&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Additions&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at December 31, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;9,454&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Additions&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Balance at March 31, 2025&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;9,454&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</cxdo:ScheduleOfGoodwillCarryingAmountTableTextBlock>
    <cxdo:GoodwillBeginningBalance
      contextRef="AsOf2023-12-31"
      decimals="-3"
      id="fid_976"
      unitRef="USD">9454000</cxdo:GoodwillBeginningBalance>
    <cxdo:GoodwillAdditions
      contextRef="From2024-01-01to2024-12-31"
      decimals="-3"
      id="fid_981"
      unitRef="USD">0</cxdo:GoodwillAdditions>
    <cxdo:GoodwillEndingBalance
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_978"
      unitRef="USD">9454000</cxdo:GoodwillEndingBalance>
    <cxdo:GoodwillAdditions
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_980"
      unitRef="USD">0</cxdo:GoodwillAdditions>
    <cxdo:GoodwillEndingBalance
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_977"
      unitRef="USD">9454000</cxdo:GoodwillEndingBalance>
    <us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_766">&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;strong&gt;9. Accrued Expenses&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in"&gt;Accrued expenses consisted of the following (in thousands):&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Accrued wages and benefits&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,045&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,828&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Accrued accounts payable&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,915&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,579&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Accrued sales and telecommunications taxes&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,839&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,837&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Product warranty liability&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;31&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;32&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Cloud computing arrangements&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;153&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;279&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Credit cards&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;104&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;117&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Other &lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;352&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;320&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Total accrued expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;6,439&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;6,992&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160; &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;The changes in aggregate product warranty liabilities for the three months ended March 31, 2025 and the year ended December 31, 2024 were as follows (in thousands):&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Warranty&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Liabilities&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at January 1, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;25&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt"&gt;Accrual for warranties&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;32&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt"&gt;Adjustments related to pre-existing warranties&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(4&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt"&gt;Warranty settlements&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(21&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at December 31, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;32&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt"&gt;Accrual for warranties&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt"&gt;Warranty settlements&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(7&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at March 31, 2025&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;31&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px"&gt;Product warranty expense is included in cost of product revenue expense and totaled $6 and $7 for the three months ended March 31, 2025 and 2024, respectively. &lt;/p&gt;</us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_839">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Accrued wages and benefits&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,045&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,828&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Accrued accounts payable&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,915&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,579&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Accrued sales and telecommunications taxes&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,839&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,837&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Product warranty liability&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;31&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;32&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Cloud computing arrangements&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;153&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;279&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Credit cards&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;104&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;117&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Other &lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;352&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;320&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Total accrued expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;6,439&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;6,992&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1687"
      unitRef="USD">2045000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1686"
      unitRef="USD">2828000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <cxdo:AccruedAccountsPayable
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1689"
      unitRef="USD">1915000</cxdo:AccruedAccountsPayable>
    <cxdo:AccruedAccountsPayable
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1688"
      unitRef="USD">1579000</cxdo:AccruedAccountsPayable>
    <us-gaap:SalesAndExciseTaxPayableCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1691"
      unitRef="USD">1839000</us-gaap:SalesAndExciseTaxPayableCurrent>
    <us-gaap:SalesAndExciseTaxPayableCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1690"
      unitRef="USD">1837000</us-gaap:SalesAndExciseTaxPayableCurrent>
    <cxdo:ProductWarrantyAccrual1
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1693"
      unitRef="USD">31000</cxdo:ProductWarrantyAccrual1>
    <cxdo:ProductWarrantyAccrual1
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1692"
      unitRef="USD">32000</cxdo:ProductWarrantyAccrual1>
    <cxdo:CloudComputingArrangements
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1701"
      unitRef="USD">153000</cxdo:CloudComputingArrangements>
    <cxdo:CloudComputingArrangements
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1700"
      unitRef="USD">279000</cxdo:CloudComputingArrangements>
    <cxdo:CreditCards
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1699"
      unitRef="USD">104000</cxdo:CreditCards>
    <cxdo:CreditCards
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1698"
      unitRef="USD">117000</cxdo:CreditCards>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1695"
      unitRef="USD">352000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1694"
      unitRef="USD">320000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrentAndNoncurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1697"
      unitRef="USD">6439000</us-gaap:OtherAccruedLiabilitiesCurrentAndNoncurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrentAndNoncurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1696"
      unitRef="USD">6992000</us-gaap:OtherAccruedLiabilitiesCurrentAndNoncurrent>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_840">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Warranty&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Liabilities&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at January 1, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;25&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt"&gt;Accrual for warranties&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;32&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt"&gt;Adjustments related to pre-existing warranties&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(4&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt"&gt;Warranty settlements&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(21&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at December 31, 2024&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;32&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt"&gt;Accrual for warranties&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:10pt"&gt;Warranty settlements&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(7&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Balance at March 31, 2025&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;31&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:ProductWarrantyAccrual
      contextRef="AsOf2023-12-31"
      decimals="-3"
      id="fid_1702"
      unitRef="USD">25000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1703"
      unitRef="USD">32000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:AdjustmentOfWarrantsGrantedForServices
      contextRef="From2024-01-01to2024-12-31"
      decimals="-3"
      id="fid_1709"
      unitRef="USD">-4000</us-gaap:AdjustmentOfWarrantsGrantedForServices>
    <us-gaap:ProductWarrantyAccrualPayments
      contextRef="From2024-01-01to2024-12-31"
      decimals="-3"
      id="fid_1707"
      unitRef="USD">21000</us-gaap:ProductWarrantyAccrualPayments>
    <cxdo:ProductWarrantiesAccrualPeriodIncreaseDecrease
      contextRef="From2024-01-01to2024-12-31"
      decimals="-3"
      id="fid_1705"
      unitRef="USD">32000</cxdo:ProductWarrantiesAccrualPeriodIncreaseDecrease>
    <cxdo:ProductWarrantiesAccrualPeriodIncreaseDecrease
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1704"
      unitRef="USD">6000</cxdo:ProductWarrantiesAccrualPeriodIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrualPayments
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1706"
      unitRef="USD">7000</us-gaap:ProductWarrantyAccrualPayments>
    <us-gaap:ProductWarrantyAccrual
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1708"
      unitRef="USD">31000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyExpense
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1712"
      unitRef="USD">6000</us-gaap:ProductWarrantyExpense>
    <us-gaap:ProductWarrantyExpense
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1711"
      unitRef="USD">7000</us-gaap:ProductWarrantyExpense>
    <us-gaap:DebtDisclosureTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_767">&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;strong&gt;10. &lt;/strong&gt;&lt;strong&gt;Notes Payable&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Notes payable consists of short and long-term financing arrangements:&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Related party note payable&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;384&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;478&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Other notes payable&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;91&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;114&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Total notes payable&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;475&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;592&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: current notes payable&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(475&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(478&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Notes payable, net of current portion&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;114&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;On February 27, 2023, we entered into a promissory note with CrossFirst Bank in the amount of $278. The promissory note has a term of three (3) years with monthly payments of Eight Thousand Five Hundred Forty-Three ($8,543), including interest of 6.58%, beginning on March 27, 2023. Additionally, the promissory note is subject to certain financial covenants. &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;On November 1, 2022, as part of the acquisition of Allegiant Networks, we entered into a promissory note with the seller in the amount of $1.1 million. The loan agreement has a term of three (3) years with quarterly payments of Ninety-Eight Thousand Three Hundred Eighty-One ($98,381), including interest at 4.00%, beginning on April 1, 2023. As of March 31, 2025 and December 31, 2024, the outstanding balance of the related party note payable was $384 and $478, respectively. During the three months ended March 31, 2025 and 2024, the Company paid principal of $94 and $90, respectively and interest of $4 and $8, respectively.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;As of March 31, 2025, future principal payments are scheduled as follows (in thousands):&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"&gt;&lt;strong&gt;Year ending December 31,&lt;/strong&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;"&gt;2025 remaining&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;361&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;"&gt;2026&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;114&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;"&gt;2027&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;"&gt;2028&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;"&gt;2029&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;"&gt;475&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:ScheduleOfDebtTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_841">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Related party note payable&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;384&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;478&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Other notes payable&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;91&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;114&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Total notes payable&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;475&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;592&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: current notes payable&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(475&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(478&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Notes payable, net of current portion&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;114&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:ScheduleOfDebtTableTextBlock>
    <cxdo:NotesPayableRelatedPartyClassifiedCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1719"
      unitRef="USD">384000</cxdo:NotesPayableRelatedPartyClassifiedCurrent>
    <us-gaap:NotesPayableCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1715"
      unitRef="USD">478000</us-gaap:NotesPayableCurrent>
    <us-gaap:OtherNotesPayable
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1720"
      unitRef="USD">91000</us-gaap:OtherNotesPayable>
    <us-gaap:OtherNotesPayable
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1722"
      unitRef="USD">114000</us-gaap:OtherNotesPayable>
    <us-gaap:NotesPayable
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1714"
      unitRef="USD">475000</us-gaap:NotesPayable>
    <us-gaap:NotesPayable
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1713"
      unitRef="USD">592000</us-gaap:NotesPayable>
    <us-gaap:NotesPayableCurrent
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1716"
      unitRef="USD">475000</us-gaap:NotesPayableCurrent>
    <cxdo:NotesPayableRelatedPartyClassifiedCurrent
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1721"
      unitRef="USD">478000</cxdo:NotesPayableRelatedPartyClassifiedCurrent>
    <us-gaap:SecuredLongTermDebt
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1718"
      unitRef="USD">0</us-gaap:SecuredLongTermDebt>
    <us-gaap:SecuredLongTermDebt
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1717"
      unitRef="USD">114000</us-gaap:SecuredLongTermDebt>
    <cxdo:PromissoryNote
      contextRef="AsOf2025-03-31_cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember"
      decimals="-3"
      id="fid_1742"
      unitRef="USD">278000</cxdo:PromissoryNote>
    <cxdo:AgreementTerm
      contextRef="From2022-10-30to2022-11-01_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"
      id="fid_1730">P3Y</cxdo:AgreementTerm>
    <us-gaap:PaymentsForRestructuring
      contextRef="From2025-01-01to2025-03-31_cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember"
      decimals="-1"
      id="fid_1734"
      unitRef="USD">85430</us-gaap:PaymentsForRestructuring>
    <us-gaap:DebtInstrumentInterestRateDuringPeriod
      contextRef="From2025-01-01to2025-03-31_cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember"
      decimals="INF"
      id="fid_1735"
      unitRef="Pure">0.0658</us-gaap:DebtInstrumentInterestRateDuringPeriod>
    <cxdo:PromissoryNote
      contextRef="AsOf2022-11-01_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"
      decimals="-5"
      id="fid_1729"
      unitRef="USD">1100000</cxdo:PromissoryNote>
    <cxdo:AgreementTerm
      contextRef="From2025-01-01to2025-03-31_cxdo_OnFebruaryTwentySevenTwoThousandTwentyThreeMember"
      id="fid_1736">P3Y</cxdo:AgreementTerm>
    <us-gaap:PaymentsForRestructuring
      contextRef="From2022-10-30to2022-11-01_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"
      decimals="-1"
      id="fid_1731"
      unitRef="USD">983810</us-gaap:PaymentsForRestructuring>
    <us-gaap:DebtInstrumentInterestRateDuringPeriod
      contextRef="From2022-10-30to2022-11-01_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"
      decimals="INF"
      id="fid_1732"
      unitRef="Pure">0.0400</us-gaap:DebtInstrumentInterestRateDuringPeriod>
    <cxdo:NotesPayableRelatedPartyClassifiedCurrent
      contextRef="AsOf2025-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"
      decimals="-3"
      id="fid_1737"
      unitRef="USD">384000</cxdo:NotesPayableRelatedPartyClassifiedCurrent>
    <cxdo:NotesPayableRelatedPartyClassifiedCurrent
      contextRef="AsOf2024-12-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"
      decimals="-3"
      id="fid_1733"
      unitRef="USD">478000</cxdo:NotesPayableRelatedPartyClassifiedCurrent>
    <us-gaap:DebtInstrumentPeriodicPaymentPrincipal
      contextRef="From2025-01-01to2025-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"
      decimals="-1"
      id="fid_1738"
      unitRef="USD">940</us-gaap:DebtInstrumentPeriodicPaymentPrincipal>
    <us-gaap:DebtInstrumentPeriodicPaymentPrincipal
      contextRef="From2024-01-01to2024-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"
      decimals="-1"
      id="fid_1739"
      unitRef="USD">900</us-gaap:DebtInstrumentPeriodicPaymentPrincipal>
    <us-gaap:InterestPaid
      contextRef="From2025-01-01to2025-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"
      decimals="-1"
      id="fid_1741"
      unitRef="USD">40</us-gaap:InterestPaid>
    <us-gaap:InterestPaid
      contextRef="From2024-01-01to2024-03-31_cxdo_AllegiantNetworksBusinessAcquisitionMember_cxdo_NovemberOneTwoThousandTwentyTwoMember"
      decimals="-1"
      id="fid_1740"
      unitRef="USD">80</us-gaap:InterestPaid>
    <us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_842">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:top;"&gt;&lt;strong&gt;Year ending December 31,&lt;/strong&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;"&gt;2025 remaining&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;361&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;"&gt;2026&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;114&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;"&gt;2027&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;"&gt;2028&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;"&gt;2029&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 15px; text-align:left;"&gt;Total&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 2pt double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 2pt double;width:9%;vertical-align:bottom;text-align:right;"&gt;475&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1723"
      unitRef="USD">361000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1724"
      unitRef="USD">114000</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1725"
      unitRef="USD">0</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1726"
      unitRef="USD">0</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour>
    <us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1727"
      unitRef="USD">0</us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive>
    <us-gaap:LongTermDebt
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1728"
      unitRef="USD">475000</us-gaap:LongTermDebt>
    <cxdo:LineOfCreditTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_768">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;strong&gt;11. Line of Credit&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 45px; text-align:justify;"&gt;The Company maintains a line of credit with a maximum principal amount of $700, payable upon demand. The line of credit expires on February 27, 2026. The line of credit bears interest at 0.50% over the Wall Street Journal Prime Rate. As of March 31, 2025, there was an outstanding balance of $0 and $700 remained available for borrowing. The line of credit is collateralized by all company assets. Additionally, the line of credit is subject to certain financial covenants.&lt;/p&gt;</cxdo:LineOfCreditTextBlock>
    <us-gaap:LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1050"
      unitRef="USD">700000</us-gaap:LineOfCreditFacilityMaximumAmountOutstandingDuringPeriod>
    <us-gaap:LineOfCreditFacilityExpirationDate1 contextRef="From2025-01-01to2025-03-31" id="fid_1051">2026-02-27</us-gaap:LineOfCreditFacilityExpirationDate1>
    <us-gaap:LineOfCreditFacilityInterestRateDuringPeriod
      contextRef="From2025-01-01to2025-03-31"
      decimals="INF"
      id="fid_1052"
      unitRef="Pure">0.0050</us-gaap:LineOfCreditFacilityInterestRateDuringPeriod>
    <us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1049"
      unitRef="USD">0</us-gaap:LineOfCreditFacilityFairValueOfAmountOutstanding>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1053"
      unitRef="USD">700000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:FairValueDisclosuresTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_769">&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;strong&gt;12. Fair Value Measurements&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;We have financial instruments as of March 31, 2025 and December 31, 2024 for which the fair value is summarized below (in thousands):&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31, 2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Carrying&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Value&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Estimated Fair&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Value&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Carrying&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Value&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Estimated Fair&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Value&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Assets:&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Trade receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,060&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,060&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,352&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,352&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Equipment financing receivables &lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,687&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,687&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,446&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,446&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Liabilities:&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Finance lease obligations&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;23&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;23&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Notes payable&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;475&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;472&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;592&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;587&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160; &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 29.5pt; text-align:justify;"&gt;We have no liabilities for which fair value is recognized in the balance sheet on a recurring basis as of March 31, 2025 and December 31, 2024.&lt;/p&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:FairValueByBalanceSheetGroupingTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_843">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;December 31, 2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Carrying&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Value&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Estimated Fair&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Value&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Carrying&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Value&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Estimated Fair&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Value&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Assets:&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Trade receivables, net&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,060&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,060&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,352&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,352&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Equipment financing receivables &lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,687&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,687&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,446&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,446&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Liabilities:&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Finance lease obligations&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;23&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;23&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Notes payable&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;475&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;472&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;592&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;587&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:FairValueByBalanceSheetGroupingTextBlock>
    <us-gaap:AccountsReceivableFairValueDisclosure
      contextRef="AsOf2025-03-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember"
      decimals="-3"
      id="fid_1062"
      unitRef="USD">4060000</us-gaap:AccountsReceivableFairValueDisclosure>
    <us-gaap:AccountsReceivableFairValueDisclosure
      contextRef="AsOf2025-03-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember"
      decimals="-3"
      id="fid_1066"
      unitRef="USD">4060000</us-gaap:AccountsReceivableFairValueDisclosure>
    <us-gaap:AccountsReceivableFairValueDisclosure
      contextRef="AsOf2024-12-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember"
      decimals="-3"
      id="fid_1054"
      unitRef="USD">4352000</us-gaap:AccountsReceivableFairValueDisclosure>
    <us-gaap:AccountsReceivableFairValueDisclosure
      contextRef="AsOf2024-12-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember"
      decimals="-3"
      id="fid_1055"
      unitRef="USD">4352000</us-gaap:AccountsReceivableFairValueDisclosure>
    <cxdo:EquipmentFinancingReceivableFairValueDisclosure
      contextRef="AsOf2025-03-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember"
      decimals="-3"
      id="fid_1063"
      unitRef="USD">3687000</cxdo:EquipmentFinancingReceivableFairValueDisclosure>
    <cxdo:EquipmentFinancingReceivableFairValueDisclosure
      contextRef="AsOf2025-03-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember"
      decimals="-3"
      id="fid_1067"
      unitRef="USD">3687000</cxdo:EquipmentFinancingReceivableFairValueDisclosure>
    <cxdo:EquipmentFinancingReceivableFairValueDisclosure
      contextRef="AsOf2024-12-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember"
      decimals="-3"
      id="fid_1056"
      unitRef="USD">3446000</cxdo:EquipmentFinancingReceivableFairValueDisclosure>
    <cxdo:EquipmentFinancingReceivableFairValueDisclosure
      contextRef="AsOf2024-12-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember"
      decimals="-3"
      id="fid_1057"
      unitRef="USD">3446000</cxdo:EquipmentFinancingReceivableFairValueDisclosure>
    <cxdo:FinanceLeasesFairValueDisclosure
      contextRef="AsOf2025-03-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember"
      decimals="-3"
      id="fid_1064"
      unitRef="USD">4000</cxdo:FinanceLeasesFairValueDisclosure>
    <cxdo:FinanceLeasesFairValueDisclosure
      contextRef="AsOf2025-03-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember"
      decimals="-3"
      id="fid_1068"
      unitRef="USD">4000</cxdo:FinanceLeasesFairValueDisclosure>
    <cxdo:FinanceLeasesFairValueDisclosure
      contextRef="AsOf2024-12-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember"
      decimals="-3"
      id="fid_1058"
      unitRef="USD">23000</cxdo:FinanceLeasesFairValueDisclosure>
    <cxdo:FinanceLeasesFairValueDisclosure
      contextRef="AsOf2024-12-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember"
      decimals="-3"
      id="fid_1059"
      unitRef="USD">23000</cxdo:FinanceLeasesFairValueDisclosure>
    <us-gaap:NotesPayableFairValueDisclosure
      contextRef="AsOf2025-03-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember"
      decimals="-3"
      id="fid_1065"
      unitRef="USD">475000</us-gaap:NotesPayableFairValueDisclosure>
    <us-gaap:NotesPayableFairValueDisclosure
      contextRef="AsOf2025-03-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember"
      decimals="-3"
      id="fid_1069"
      unitRef="USD">472000</us-gaap:NotesPayableFairValueDisclosure>
    <us-gaap:NotesPayableFairValueDisclosure
      contextRef="AsOf2024-12-31_cxdo_CarryingReportedAmountsFairValueDisclosureMember"
      decimals="-3"
      id="fid_1060"
      unitRef="USD">592000</us-gaap:NotesPayableFairValueDisclosure>
    <us-gaap:NotesPayableFairValueDisclosure
      contextRef="AsOf2024-12-31_cxdo_EstimateOfFairValueFairValueDisclosuresMember"
      decimals="-3"
      id="fid_1061"
      unitRef="USD">587000</us-gaap:NotesPayableFairValueDisclosure>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_770">&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&lt;strong&gt;13. Income Taxes&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Our effective tax rate for the three months ended March 31, 2025 and 2024 was 3.6% and 5.8%, respectively, which resulted in an income tax benefit/(provision) of $(44) and $(27), respectively.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;As of each reporting date, management considers new evidence, both positive and negative, that could affect its view of the future realization of deferred tax assets. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income in the periods in which those temporary differences become deductible. We reduce the carrying amounts of deferred tax assets by a valuation allowance if, based on the evidence available, it is more-likely-than-not that such assets will not be realized. In making the assessment under the more-likely-than-not standard, appropriate consideration must be given to all positive and negative evidence related to the realization of the deferred tax assets. This assessment considers, among other matters, the nature, frequency and severity of current and cumulative losses, forecasts of future profitability, the duration of statutory carry-forward periods by jurisdiction, unitary versus stand-alone state tax filings, our experience with loss carryforwards expiring unutilized, and all tax planning alternatives that may be available. As of December 31, 2024, management reviewed the weight of all the positive and negative evidence available. Management reviewed negative evidence such as three years of cumulative pretax loss in the U.S. federal tax jurisdiction, and positive evidence such as projections of future pretax income and the duration of statutory carry-forward periods. As of December 31, 2024 the Company has a cumulative pretax loss for the three year lookback excluding the gain on the sale of property and equipment, which is considered significant objectively verifiable negative evidence. Management also evaluated projections of future pretax income and the duration of statutory carry-forward periods to determine if the NOL carryforwards could be utilized in whole or in part before they expire unutilized. Forecasts and projections of future income are inherently subjective and therefore generally are given less weight, based on the extent to which the assumptions can be objectively verified based on historical experience. Although historical trends utilized in our projections are objectively verifiable we assigned less weight to this positive evidence given the subjective nature of assumptions in projections. Management reviewed negative evidence related to experience of credits and loss carryforwards expiring unutilized, and determined that although negative evidence exists, it was not significant evidence, as the current loss carryforwards do not begin to expire until 2032 and therefore risk is minimal. After reviewing the weight of the positive and negative evidence, management determined that the positive evidence was not sufficient enough to overcome the negative evidence of cumulative pretax losses for the three-year lookback to conclude that it is more likely than not that deferred tax assets of $5,417 are realizable. Therefore, a valuation allowance of $5,417 was recorded against our gross deferred tax asset balance as of March 31, 2025 and December 31, 2024.&lt;/p&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="From2025-01-01to2025-03-31"
      decimals="INF"
      id="fid_1748"
      unitRef="Pure">0.036</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="From2024-01-01to2024-03-31"
      decimals="INF"
      id="fid_1743"
      unitRef="Pure">0.058</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <cxdo:IncomeTaxBenefitProvisions
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1747"
      unitRef="USD">-44000</cxdo:IncomeTaxBenefitProvisions>
    <cxdo:IncomeTaxBenefitProvisions
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1746"
      unitRef="USD">-27000</cxdo:IncomeTaxBenefitProvisions>
    <cxdo:DeferredTaxesRealizableAmount
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1750"
      unitRef="USD">5417000</cxdo:DeferredTaxesRealizableAmount>
    <cxdo:DeferredTaxAssetValuationAllowance
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1749"
      unitRef="USD">5417000</cxdo:DeferredTaxAssetValuationAllowance>
    <us-gaap:LesseeOperatingLeasesTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_771">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;strong&gt;14. Leases&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;em&gt;Lessee Accounting&lt;/em&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;We determine if an agreement is a lease at inception. We lease office space, data center colocation space, other assets, and office equipment under operating leases. We lease data center equipment, including maintenance contracts and vehicles under finance leases.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Operating leases are recorded as right-of-use (&#x201c;ROU&#x201d;) assets and lease liabilities on the balance sheet, excluding leases that are less than 12 months. ROU assets represent our right to use the leased asset for the lease term and lease liabilities represent our obligation to make lease payments. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. As most of our leases do not provide an implicit rate, we use our estimated incremental borrowing rate at the commencement date to determine the present value of lease payments. The operating lease ROU assets also include any lease payments made and exclude lease incentives. The Company&#x2019;s lease agreements do not contain any variable lease payments, material residual value guarantees or any restrictive covenants. Our lease terms may include options, at our sole discretion, to extend or terminate the lease.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;We leased office space in Tempe, Arizona under a non-cancelable operating lease agreement that expired in January 2025. On August 9, 2023, in connection with the sale of our corporate office building and land, we entered into a lease agreement to leaseback the property. The operating lease agreement has an initial term of eighteen full calendar months, with an option to terminate the lease on the last day of the twelfth full calendar month with a sixty-day notice. The operating lease agreement includes fixed fees for property tax, insurance, and common area maintenance (CAM). We account for the lease components and non-lease components such as fixed fee property tax and insurance charges as a single lease component. The CAM charges are considered a separate non-lease component of the lease agreement and are excluded from the measurement of the lease liability. We utilized our incremental borrowing rate of 6.58% to determine the present value of lease payments to determine our lease liability. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $14 and $78, respectively.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;We currently are in a non-cancelable commercial sublease operating agreement to sublease office space in Tempe Arizona, which is the headquarters for the Company. This sublease commenced on October 1, 2024, and will continue for thirty-seven (37) months through October 31, 2027. The base monthly rent is as follows: October 1, 2024 &#x2013; September 30, 2025, $28; October 1, 2025 &#x2013; September 30, 2026, $29, and October 1, 2026 &#x2013; October 31, 2027, $30. The Company is entitled to three months of rent abatement, which will be January 2025, January 2026, and January 2027. If Operating Costs exceed $20 in a calendar year, then the Company shall be responsible for fifty (50%) percent of the amount exceeding $20. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $80 and $0, respectively&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;We leased office space in Reston, Virginia under a non-cancelable operating lease agreement that expired in October 2024. The operating lease contained customary escalation clauses. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $0 and $13, respectively.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;We currently lease office space in San Diego, California under a non-cancelable operating lease agreement that expires in 2025. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $22 and $22, respectively.&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;We currently lease office space in Overland Park, Kansas under a non-cancelable operating lease agreement that expires in 2027. The operating lease contains customary escalation clauses. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $41 and $51, respectively.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;We currently lease other assets under multiple operating leases. The leases expire on various dates through 2027 and the interest rates range from 2.81% to 15.74%. The expense is included in cost of product expenses and totaled approximately $18 and $21 for the three months ended March 31, 2025 and 2024, respectively.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;We currently lease data center colocation space in Grand Rapids, Michigan, Las Vegas, Nevada, Dallas, Texas, Lenexa, Kansas, and Phoenix, Arizona under non-cancelable operating lease agreements that expire on various dates through 2029. Rental expense for the three months ended March 31, 2025 and 2024 was approximately $114 and $144, respectively.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;We have lease agreements with lease and non-lease components, and we account for the lease and non-lease components as a single lease component. Our lease agreements do not contain any material residual value guarantees or material restrictive covenants.&#160; The Company leases equipment and support under finance lease agreements which extends through 2026. The Company also leases one vehicle under a financing agreement. The outstanding balance for finance leases was $4 and $23 as of March 31, 2025 and December 31, 2024, respectively. The Company recorded assets classified as property and equipment under finance lease obligations of $486 and $486 as of March 31, 2025 and December 31, 2024, respectively. Related accumulated depreciation totaled $419 and $403 as of March 31, 2025 and December 31, 2024, respectively. The $40 in support contracts were classified as a prepaid expense and are being amortized over the service period of three years. One support contract expired in January 2021 and the other expired in June 2024. &#160;Amortization expense is included in general and administrative expenses and totaled $23 and $1 for the three months ended March 31, 2025 and 2024, respectively. The interest rates on finance lease obligations range from 1.37% and 15.74% and interest expense was $0 and $1 for the three months ended March 31, 2025 and 2024, respectively. &lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;The maturity of operating leases and finance lease liabilities as of March 31, 2025 are as follows:&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Year ending December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Operating&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Leases&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Finance&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Leases&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2025 remaining&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;479&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2026&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;555&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2027&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;458&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2028&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;62&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2029&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;41&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Total minimum lease payments&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,595&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Less: amount representing interest&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(163&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Present value of minimum lease payments&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;1,432&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;4&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160; &lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Lease term and discount rate&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Weighted-average remaining lease term (years)&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2.9&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Finance leases&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1.7&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Weighted-average discount rate&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;7.6&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;%&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Finance leases&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;15.7&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;%&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160; &lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Three Months Ended March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Three Months Ended March 31, 2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td colspan="8" style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Operating cash flows from operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;128&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;213&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Operating cash flows from finance leases&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;1&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Financing cash flows from finance leases&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;(19&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;(18&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Non-cash investing and financing activities:&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Additions to ROU assets obtained from:&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;New operating lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;New finance lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <cxdo:DescriptionOfleaseExpiryDate
      contextRef="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember"
      id="fid_1807">operating lease agreement that expired in January 2025</cxdo:DescriptionOfleaseExpiryDate>
    <cxdo:IncrementalBorrowingRate
      contextRef="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember"
      decimals="INF"
      id="fid_1813"
      unitRef="Pure">0.0658</cxdo:IncrementalBorrowingRate>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember"
      decimals="-3"
      id="fid_1797"
      unitRef="USD">14000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2024-01-01to2024-03-31_cxdo_TempeArizoneMember"
      decimals="-3"
      id="fid_1798"
      unitRef="USD">78000</us-gaap:OperatingLeaseExpense>
    <cxdo:InterestExpenseOnMonthlyRentDepositLiabilitiesDescription
      contextRef="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember_cxdo_OctoberTwoThousandTwentyFourMember"
      id="fid_1816">October 1, 2024 &#x2013; September 30, 2025, $28; October 1, 2025 &#x2013; September 30, 2026, $29, and October 1, 2026 &#x2013; October 31, 2027, $30</cxdo:InterestExpenseOnMonthlyRentDepositLiabilitiesDescription>
    <cxdo:OperatingCostsAndExpencesDescription
      contextRef="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember_cxdo_OctoberTwoThousandTwentyFourMember"
      id="fid_1817">Operating Costs exceed $20 in a calendar year, then the Company shall be responsible for fifty (50%) percent of the amount exceeding $20</cxdo:OperatingCostsAndExpencesDescription>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2025-01-01to2025-03-31_cxdo_TempeArizoneMember_cxdo_OctoberTwoThousandTwentyFourMember"
      decimals="-3"
      id="fid_1818"
      unitRef="USD">80000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2024-01-01to2024-03-31_cxdo_TempeArizoneMember_cxdo_OctoberTwoThousandTwentyFourMember"
      decimals="-3"
      id="fid_1819"
      unitRef="USD">0</us-gaap:OperatingLeaseExpense>
    <cxdo:DescriptionOfleaseExpiryDate
      contextRef="From2025-01-01to2025-03-31_cxdo_RestonVirginiaMember"
      id="fid_1808">operating lease agreement that expired in October 2024</cxdo:DescriptionOfleaseExpiryDate>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2025-01-01to2025-03-31_cxdo_RestonVirginiaMember"
      decimals="-3"
      id="fid_1799"
      unitRef="USD">0</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2024-01-01to2024-03-31_cxdo_RestonVirginiaMember"
      decimals="-3"
      id="fid_1800"
      unitRef="USD">13000</us-gaap:OperatingLeaseExpense>
    <cxdo:DescriptionOfleaseExpiryDate
      contextRef="From2025-01-01to2025-03-31_cxdo_SanDiegoCaliforniaMember"
      id="fid_1809">operating lease agreement that expires in 2025</cxdo:DescriptionOfleaseExpiryDate>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2025-01-01to2025-03-31_cxdo_SanDiegoCaliforniaMember"
      decimals="-3"
      id="fid_1801"
      unitRef="USD">22000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2024-01-01to2024-03-31_cxdo_SanDiegoCaliforniaMember"
      decimals="-3"
      id="fid_1802"
      unitRef="USD">22000</us-gaap:OperatingLeaseExpense>
    <cxdo:DescriptionOfleaseExpiryDate
      contextRef="From2025-01-01to2025-03-31_cxdo_OverlandParkKansasMember"
      id="fid_1810">operating lease agreement that expires in 2027</cxdo:DescriptionOfleaseExpiryDate>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2025-01-01to2025-03-31_cxdo_OverlandParkKansasMember"
      decimals="-3"
      id="fid_1803"
      unitRef="USD">41000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2024-01-01to2024-03-31_cxdo_OverlandParkKansasMember"
      decimals="-3"
      id="fid_1804"
      unitRef="USD">51000</us-gaap:OperatingLeaseExpense>
    <cxdo:DescriptionOfleaseExpiryDate
      contextRef="From2025-01-01to2025-03-31_cxdo_OtherOperatingLeasesMember"
      id="fid_1811">The leases expire on various dates through 2027 and the interest rates range from 2.81% to 15.74%</cxdo:DescriptionOfleaseExpiryDate>
    <us-gaap:CostsAndExpenses
      contextRef="From2025-01-01to2025-03-31_cxdo_OtherOperatingLeasesMember"
      decimals="-3"
      id="fid_1814"
      unitRef="USD">18000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses
      contextRef="From2024-01-01to2024-03-31_cxdo_OtherOperatingLeasesMember"
      decimals="-3"
      id="fid_1815"
      unitRef="USD">21000</us-gaap:CostsAndExpenses>
    <cxdo:DescriptionOfleaseExpiryDate
      contextRef="From2025-01-01to2025-03-31_cxdo_MichiganLasVegasMember"
      id="fid_1812">operating lease agreements that expire on various dates through 2029</cxdo:DescriptionOfleaseExpiryDate>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2024-01-01to2024-03-31_cxdo_MichiganLasVegasMember"
      decimals="-3"
      id="fid_1806"
      unitRef="USD">114000</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="From2025-01-01to2025-03-31_cxdo_MichiganLasVegasMember"
      decimals="-3"
      id="fid_1805"
      unitRef="USD">144000</us-gaap:OperatingLeaseExpense>
    <us-gaap:FinanceLeaseLiability
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1785"
      unitRef="USD">4000</us-gaap:FinanceLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1784"
      unitRef="USD">23000</us-gaap:FinanceLeaseLiability>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1787"
      unitRef="USD">486000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1786"
      unitRef="USD">486000</us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentOwnedAccumulatedDepreciation
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1789"
      unitRef="USD">419000</us-gaap:PropertyPlantAndEquipmentOwnedAccumulatedDepreciation>
    <us-gaap:PropertyPlantAndEquipmentOwnedAccumulatedDepreciation
      contextRef="AsOf2024-12-31"
      decimals="-3"
      id="fid_1788"
      unitRef="USD">403000</us-gaap:PropertyPlantAndEquipmentOwnedAccumulatedDepreciation>
    <us-gaap:OtherExpenses
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1790"
      unitRef="USD">40000</us-gaap:OtherExpenses>
    <cxdo:AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1791"
      unitRef="USD">23000</cxdo:AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses>
    <cxdo:AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1792"
      unitRef="USD">1000</cxdo:AmortizationExpenseIncludedInGeneralAndAdministrativeExpenses>
    <cxdo:InterestRateFinanceLeases
      contextRef="From2025-01-01to2025-03-31_cxdo_BottomMember"
      decimals="INF"
      id="fid_1794"
      unitRef="Pure">0.0137</cxdo:InterestRateFinanceLeases>
    <cxdo:InterestRateFinanceLeases
      contextRef="From2025-01-01to2025-03-31_srt_ScenarioPreviouslyReportedMember"
      decimals="INF"
      id="fid_1793"
      unitRef="Pure">0.1574</cxdo:InterestRateFinanceLeases>
    <us-gaap:InterestExpenseDebt
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1795"
      unitRef="USD">0</us-gaap:InterestExpenseDebt>
    <us-gaap:InterestExpenseDebt
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1796"
      unitRef="USD">1000</us-gaap:InterestExpenseDebt>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_854">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Year ending December 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Operating&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Leases&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Finance&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Leases&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2025 remaining&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;479&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2026&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;555&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2027&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;458&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2028&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;62&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;2029&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;41&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Total minimum lease payments&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,595&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Less: amount representing interest&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(163&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Present value of minimum lease payments&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;1,432&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;4&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1752"
      unitRef="USD">479000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1761"
      unitRef="USD">2000</us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1753"
      unitRef="USD">555000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1762"
      unitRef="USD">2000</us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1754"
      unitRef="USD">458000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1763"
      unitRef="USD">0</us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1755"
      unitRef="USD">62000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1764"
      unitRef="USD">0</us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1756"
      unitRef="USD">41000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1765"
      unitRef="USD">0</us-gaap:FinanceLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1757"
      unitRef="USD">1595000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:FinanceLeaseLiabilityPaymentsDue
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1766"
      unitRef="USD">4000</us-gaap:FinanceLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1758"
      unitRef="USD">163000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1767"
      unitRef="USD">0</us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1759"
      unitRef="USD">1432000</us-gaap:OperatingLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="AsOf2025-03-31"
      decimals="-3"
      id="fid_1768"
      unitRef="USD">4000</us-gaap:FinanceLeaseLiability>
    <cxdo:ScheduleOfLeaseTermAndDiscountTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_855">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="BORDER-BOTTOM: #000000 1px solid;vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Lease term and discount rate&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Weighted-average remaining lease term (years)&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2.9&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Finance leases&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1.7&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Weighted-average discount rate&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;7.6&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;%&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Finance leases&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;15.7&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;%&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</cxdo:ScheduleOfLeaseTermAndDiscountTableTextBlock>
    <cxdo:OperatingLeaseWeightedAverageRemainingLeaseTerm contextRef="From2025-01-01to2025-03-31" id="fid_1769">P2Y10M24D</cxdo:OperatingLeaseWeightedAverageRemainingLeaseTerm>
    <cxdo:FinanceLeaseWeightedAverageRemainingLeaseTerm contextRef="From2025-01-01to2025-03-31" id="fid_1770">P1Y8M12D</cxdo:FinanceLeaseWeightedAverageRemainingLeaseTerm>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="AsOf2025-03-31"
      decimals="INF"
      id="fid_1771"
      unitRef="Pure">0.076</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent
      contextRef="AsOf2025-03-31"
      decimals="INF"
      id="fid_1772"
      unitRef="Pure">0.157</us-gaap:FinanceLeaseWeightedAverageDiscountRatePercent>
    <cxdo:ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_856">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Three Months Ended March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Three Months Ended March 31, 2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td colspan="8" style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Cash paid for amounts included in the measurement of lease liabilities:&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Operating cash flows from operating leases&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;128&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;213&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Operating cash flows from finance leases&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;1&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Financing cash flows from finance leases&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;(19&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;(18&lt;/td&gt;&lt;td style="vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Non-cash investing and financing activities:&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Additions to ROU assets obtained from:&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;New operating lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 15px"&gt;New finance lease liabilities&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</cxdo:ScheduleOfCashPaidForAmountsIncludedInMeasurementOfLeaseLiabilitiesTableTextBlock>
    <cxdo:OperatingCashFlowsFromOperatingLeases
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1773"
      unitRef="USD">128000</cxdo:OperatingCashFlowsFromOperatingLeases>
    <cxdo:OperatingCashFlowsFromOperatingLeases
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1774"
      unitRef="USD">213000</cxdo:OperatingCashFlowsFromOperatingLeases>
    <cxdo:OperatingCashFlowsFromFinanceLeases
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1775"
      unitRef="USD">0</cxdo:OperatingCashFlowsFromFinanceLeases>
    <cxdo:OperatingCashFlowsFromFinanceLeases
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1776"
      unitRef="USD">1000</cxdo:OperatingCashFlowsFromFinanceLeases>
    <cxdo:FinancingCashFlowsFromFinanceLeases
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1777"
      unitRef="USD">-19000</cxdo:FinancingCashFlowsFromFinanceLeases>
    <cxdo:FinancingCashFlowsFromFinanceLeases
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1778"
      unitRef="USD">-18000</cxdo:FinancingCashFlowsFromFinanceLeases>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1780"
      unitRef="USD">0</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1781"
      unitRef="USD">0</us-gaap:RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1782"
      unitRef="USD">0</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1783"
      unitRef="USD">0</us-gaap:RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_772">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;strong&gt;15. Commitments and Contingencies&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;em&gt;Annual Employee Bonus Plan Accrual&lt;/em&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;We utilize incentive bonuses to reward performance achievements, which provides potential annual cash bonus awards to Company employees, including Named Executive Officers (&#x201c;NEOs&#x201d;). Under the Bonus Plan, the Compensation Committee of the Board of Directors of the Company (the &#x201c;Board&#x201d;) has established a bonus pool of $990, for our NEOs and executive management team for the year ending December 31, 2025. The Board established a bonus pool of $350 for our non-executive employees, for the year ending December 31, 2025. Participants are eligible to receive cash bonus awards based upon achieving annual performance targets established by the Board for the year ending December 31, 2025, relating to annual revenue and adjusted EBITDA performance targets. Awards will be paid on a tiered scale based upon actual performance as a percentage of the performance targets with a floor and cap. Payments for individual performance targets met or exceeded are payable, whether or not all performance targets are met, consistent with the weighted amounts for each performance target within the bonus pools. Bonus awards for NEOs and executive management will be weighted 50% on annual revenue and 50% on Adjusted EBITDA. No bonus will be awarded for any performance target for which actual performance is less than 90% of target. At 90% or greater actual performance relative to the target, 50% of the weighted bonus amount for the performance target is payable. From 90% to 100% actual performance relative to the target, the remaining 50% of the weighted bonus amount is awarded pro rata with the percentage of actual performance exceeding 90% of target (i.e., each 1% excess over 90% of performance target equals 5% of the weighted bonus amount payable). If actual performance reaches 110% of performance target or greater for any individual performance target, then an additional 10% of the amount apportioned to that performance target will be payable as an additional bonus. Historically, for the years ended December 31, 2024 and 2023, the employee bonus plan performance targets were achieved at 100% or greater. Based on our financial performance as of March 31, 2025 and forecasted annualized results for the year ended December 31, 2025, management determined that the achievement of 100% of the annual revenue and Adjusted EBITDA performance targets is probable. Based on management&#x2019;s estimate, the Company recorded an accrual of $335 for the employee bonus plan, which is included in accrued expense in the accompanying condensed consolidated balance sheet at March 31, 2025.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;em&gt;Purchase Obligations&lt;/em&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;In February 2024, the Company entered into a $5.4 million noncancellable five-year hosting service contract with Oracle, a third-party network service provider. The contract includes minimum quarterly commitments and the requirements to maintain the service level for the entire contract period. Under this agreement, $340 remains due during fiscal year 2025, $1.1 million will be due during fiscal 2026, $1.4 million will be due during fiscal 2027, $1.7 million will be due during fiscal 2028, and $456 will be due during fiscal 2029. During the three months ended March 31, 2025 and 2024, the Company has expensed $0 and $0, respectively of the purchase obligation and $81 and $234 is included in accrued expenses at March 31, 2025 and December 31, 2024, respectively.&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;em&gt;Legal Proceedings&lt;/em&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;In the ordinary course of business, the Company may be involved in a variety of claims, lawsuits, investigations, and other proceedings, including patent infringement claims, employment litigation, regulatory compliance matters, and contractual disputes, that can arise in the normal course of the Company's operations. The Company recognizes a provision when management believes information available prior to the issuance of the financial statements indicates it is probable a loss has been incurred as of the date of the financial statements and the amount of loss can be reasonably estimated. The Company adjusts the amount of the provision to reflect the impact of negotiations, settlements, rulings, advice of legal counsel, and other information and events pertaining to a particular case. As of March 31, 2025, the Company does not have a recorded liability for estimated losses. Legal costs are expensed as incurred.&lt;/p&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <cxdo:BonusDescription
      contextRef="From2025-01-01to2025-03-31_cxdo_DecemberThirtyOneTwoThousandTwentyFourMember_cxdo_BonusPlanMember_cxdo_BoardOfDirectorsMember"
      id="fid_1338">the Compensation Committee of the Board of Directors of the Company (the &#x201c;Board&#x201d;) has established a bonus pool of $990, for our NEOs and executive management team for the year ending December 31, 2025. The Board established a bonus pool of $350 for our non-executive employees, for the year ending December 31, 2025</cxdo:BonusDescription>
    <cxdo:BonusAwardDescription
      contextRef="From2025-01-01to2025-03-31_cxdo_DecemberThirtyOneTwoThousandTwentyFourMember_cxdo_BonusPlanMember_cxdo_BoardOfDirectorsMember"
      id="fid_1339">Bonus awards for NEOs and executive management will be weighted 50% on annual revenue and 50% on Adjusted EBITDA. No bonus will be awarded for any performance target for which actual performance is less than 90% of target. At 90% or greater actual performance relative to the target, 50% of the weighted bonus amount for the performance target is payable. From 90% to 100% actual performance relative to the target, the remaining 50% of the weighted bonus amount is awarded pro rata with the percentage of actual performance exceeding 90% of target (i.e., each 1% excess over 90% of performance target equals 5% of the weighted bonus amount payable). If actual performance reaches 110% of performance target or greater for any individual performance target, then an additional 10% of the amount apportioned to that performance target will be payable as an additional bonus</cxdo:BonusAwardDescription>
    <us-gaap:AccretionExpense
      contextRef="From2025-01-01to2025-03-31_cxdo_DecemberThirtyOneTwoThousandTwentyFourMember_cxdo_BonusPlanMember_cxdo_BoardOfDirectorsMember"
      decimals="-3"
      id="fid_1341"
      unitRef="USD">335000</us-gaap:AccretionExpense>
    <cxdo:ServiceContractAmount
      contextRef="From2024-02-01to2024-02-29_cxdo_OracleMemberMember"
      decimals="-5"
      id="fid_1340"
      unitRef="USD">5400000</cxdo:ServiceContractAmount>
    <cxdo:DescriptionRelatedToNoncancellableServiceContractFutureAmount
      contextRef="From2024-02-01to2024-02-29_cxdo_OracleMemberMember"
      id="fid_1343">Under this agreement, $340 remains due during fiscal year 2025, $1.1 million will be due during fiscal 2026, $1.4 million will be due during fiscal 2027, $1.7 million will be due during fiscal 2028, and $456 will be due during fiscal 2029</cxdo:DescriptionRelatedToNoncancellableServiceContractFutureAmount>
    <us-gaap:PurchaseObligation
      contextRef="AsOf2025-03-31_cxdo_OracleMemberMember"
      decimals="-3"
      id="fid_1337"
      unitRef="USD">0</us-gaap:PurchaseObligation>
    <us-gaap:PurchaseObligation
      contextRef="AsOf2024-03-31_cxdo_OracleMemberMember"
      decimals="-3"
      id="fid_2342"
      unitRef="USD">0</us-gaap:PurchaseObligation>
    <us-gaap:AccretionExpense
      contextRef="From2025-01-01to2025-03-31_cxdo_OracleMemberMember"
      decimals="-3"
      id="fid_1342"
      unitRef="USD">81000</us-gaap:AccretionExpense>
    <us-gaap:AccretionExpense
      contextRef="From2024-01-01to2024-03-31_cxdo_OracleMemberMember"
      decimals="-3"
      id="fid_1608"
      unitRef="USD">234000</us-gaap:AccretionExpense>
    <us-gaap:SegmentReportingDisclosureTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_777">&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&lt;strong&gt;16. Segment Reporting&lt;/strong&gt;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;The Company has two reportable operating segments, which consist of cloud telecommunications services and software solutions and uses segment income/(loss) from operations to assess performance against forecasted results and allocate resources to its segments. Segment income/(loss) from operations is determined on the same basis as consolidated income/(loss) from operations presented in the Company&#x2019;s consolidated statements of operations. The cloud telecommunications services segment generates revenue from selling cloud telecommunication services, products, and other internet services. The software solutions segment generates revenue from selling perpetual software licenses and software subscriptions, subscription maintenance and support, and professional services.&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; TEXT-INDENT: 0.5in; text-align:justify;"&gt;Our chief operating decision maker (CODM) is our Chief Executive Officer, Jeffrey G. Korn. The CODM uses segment income/(loss) from operations before income taxes for purposes of allocating resources and evaluating financial performance predominantly in the annual budget and forecasting process. The CODM considers budget-to-actual variances on a quarterly basis using the segment income/(loss) before taxes measure when making decisions about allocating capital and personnel to the segments. The CODM does not review assets in evaluating the results of the operating segments, and therefore, such information is not presented. Segment revenue, significant segment expenses, income/(loss) from operations, other income/(expense) and income/(loss) before income tax for the three months ended March 31, 2025 and 2024 are as follows (in thousands):&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Three Months Ended March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Cloud&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Software&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;(In thousands)&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Telecommunications&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Solutions&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Consolidated&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Service revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;8,182&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;8,182&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Software solutions revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,868&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,868&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Product revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,007&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,007&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in"&gt;Consolidated revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;9,189&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;6,868&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;16,057&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: significant and other segment expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Employee expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,926&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,245&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;7,171&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Commissions&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,342&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;372&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,714&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Contractor expense&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;444&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;385&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;829&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Depreciation and amortization&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;305&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;466&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;771&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Other segment items(1)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2,991&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,431&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;4,422&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in"&gt;Total operating expense&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;9,008&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;5,899&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;14,907&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Segment income/(loss) from operations&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;181&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;969&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,150&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: other segment income/(expense)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Interest income&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;84&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;84&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Interest expense&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(9&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(9&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Other income/(expense)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;6&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(16&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(10&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Income/(loss) before income tax&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;262&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;953&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,215&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Income tax benefit/(provision)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(44&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Net income/(loss)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;1,171&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#x2014;&#x2014;&#x2014;&#x2014;&#x2014;&#x2014;&#x2014; &lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="width:4%;vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;(1)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;Other segment items primarily includes third-party telecommunication charges, cost of product revenue, software costs, data center costs, and other overhead expenses.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Three Months Ended March 31, 2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Cloud&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Software&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;(In thousands)&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Telecommunications&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Solutions&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Consolidated&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Service revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;7,845&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;7,845&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Software solutions revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;5,146&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;5,146&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Product revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,295&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,295&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in"&gt;Consolidated revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;9,140&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;5,146&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;14,286&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: significant and other segment expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Employee expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,149&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,488&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,637&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Commissions&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,181&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;196&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,377&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Contractor expense&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;419&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;398&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;817&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Depreciation and amortization&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;355&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;483&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;838&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Other segment items(1)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2,958&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,175&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;4,133&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in"&gt;Total operating expense&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;9,062&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;4,740&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;13,803&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Segment income/(loss) from operations&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;78&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;406&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;483&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: other segment income/(expense)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Interest income&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;5&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;5&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Interest expense&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(13&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(13&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Other income/(expense)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(17&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(15&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Income/(loss) before income tax&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;72&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;389&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;461&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Income tax benefit/(provision)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(27&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Net income/(loss)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;434&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px; text-align:justify;"&gt;&#x2014;&#x2014;&#x2014;&#x2014;&#x2014;&#x2014;&#x2014;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="width:4%;vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;(1)&lt;/p&gt;&lt;/td&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;Other segment items primarily includes third-party telecommunication charges, cost of product revenue, software costs, data center costs, and other overhead expenses.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:0.5in"&gt;&#160;&lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px"&gt;The Company operates in two geographic areas, the United States and international. Revenue by geography is based on the location of the customer from which the revenue is earned. Revenue by geographic location is as follows (in thousands): &lt;/p&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px;text-indent:45px"&gt;&#160;&lt;/p&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Three Months Ended&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;United States&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;15,353&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;13,431&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;International&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;704&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;855&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Total revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;16,057&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;14,286&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_857">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Three Months Ended March 31, 2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Cloud&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Software&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;(In thousands)&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Telecommunications&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Solutions&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Consolidated&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Service revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;8,182&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;8,182&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Software solutions revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,868&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,868&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Product revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,007&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,007&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in"&gt;Consolidated revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;9,189&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;6,868&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;16,057&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: significant and other segment expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Employee expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,926&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;3,245&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;7,171&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Commissions&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,342&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;372&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,714&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Contractor expense&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;444&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;385&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;829&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Depreciation and amortization&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;305&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;466&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;771&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Other segment items(1)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2,991&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,431&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;4,422&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in"&gt;Total operating expense&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;9,008&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;5,899&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;14,907&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Segment income/(loss) from operations&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;181&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;969&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,150&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: other segment income/(expense)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Interest income&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;84&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;84&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Interest expense&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(9&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(9&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Other income/(expense)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;6&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(16&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(10&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Income/(loss) before income tax&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;262&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;953&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,215&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Income tax benefit/(provision)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(44&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Net income/(loss)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;1,171&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;&lt;strong&gt;Three Months Ended March 31, 2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Cloud&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Software&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td style="vertical-align:bottom;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;(In thousands)&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Telecommunications&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Solutions&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Segment&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Consolidated&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Service revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;7,845&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;7,845&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Software solutions revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;5,146&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;5,146&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Product revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,295&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,295&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in"&gt;Consolidated revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;9,140&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;5,146&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;14,286&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: significant and other segment expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Employee expenses&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;4,149&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;2,488&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;6,637&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Commissions&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,181&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;196&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;1,377&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Contractor expense&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;419&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;398&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;817&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Depreciation and amortization&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;355&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;483&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;838&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Other segment items(1)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2,958&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;1,175&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;4,133&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:0.25in"&gt;Total operating expense&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;9,062&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;4,740&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;13,803&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Segment income/(loss) from operations&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;78&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;406&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;483&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Less: other segment income/(expense)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Interest income&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;5&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;5&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Interest expense&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(13&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;-&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;(13&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Other income/(expense)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;2&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(17&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: black 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: black 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(15&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Income/(loss) before income tax&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;72&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;389&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;461&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Income tax benefit/(provision)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;(27&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;)&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;Net income/(loss)&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="width:9%;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;434&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31_us-gaap_ServiceMember"
      decimals="-3"
      id="fid_1824"
      unitRef="USD">8182000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31_us-gaap_ServiceMember_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1823"
      unitRef="USD">0</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31_us-gaap_ServiceMember_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1822"
      unitRef="USD">8182000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1825"
      unitRef="USD">0</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1826"
      unitRef="USD">6868000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31_us-gaap_SoftwareDevelopmentMember"
      decimals="-3"
      id="fid_1827"
      unitRef="USD">6868000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31_us-gaap_ProductMember_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1828"
      unitRef="USD">1007000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31_us-gaap_ProductMember_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1829"
      unitRef="USD">0</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31_us-gaap_ProductMember"
      decimals="-3"
      id="fid_1830"
      unitRef="USD">1007000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1831"
      unitRef="USD">9189000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1832"
      unitRef="USD">6868000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1820"
      unitRef="USD">16057000</us-gaap:Revenues>
    <us-gaap:EmployeeBenefitsAndShareBasedCompensation
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1845"
      unitRef="USD">3926000</us-gaap:EmployeeBenefitsAndShareBasedCompensation>
    <us-gaap:EmployeeBenefitsAndShareBasedCompensation
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1846"
      unitRef="USD">3245000</us-gaap:EmployeeBenefitsAndShareBasedCompensation>
    <us-gaap:EmployeeBenefitsAndShareBasedCompensation
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1911"
      unitRef="USD">7171000</us-gaap:EmployeeBenefitsAndShareBasedCompensation>
    <us-gaap:NoninterestExpenseCommissionExpense
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1849"
      unitRef="USD">1342000</us-gaap:NoninterestExpenseCommissionExpense>
    <us-gaap:NoninterestExpenseCommissionExpense
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1850"
      unitRef="USD">372000</us-gaap:NoninterestExpenseCommissionExpense>
    <us-gaap:NoninterestExpenseCommissionExpense
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1909"
      unitRef="USD">1714000</us-gaap:NoninterestExpenseCommissionExpense>
    <us-gaap:ProfessionalAndContractServicesExpense
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1853"
      unitRef="USD">444000</us-gaap:ProfessionalAndContractServicesExpense>
    <us-gaap:ProfessionalAndContractServicesExpense
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1854"
      unitRef="USD">385000</us-gaap:ProfessionalAndContractServicesExpense>
    <us-gaap:ProfessionalAndContractServicesExpense
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1907"
      unitRef="USD">829000</us-gaap:ProfessionalAndContractServicesExpense>
    <us-gaap:OtherDepreciationAndAmortization
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1857"
      unitRef="USD">305000</us-gaap:OtherDepreciationAndAmortization>
    <us-gaap:OtherDepreciationAndAmortization
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1858"
      unitRef="USD">466000</us-gaap:OtherDepreciationAndAmortization>
    <us-gaap:OtherDepreciationAndAmortization
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1905"
      unitRef="USD">771000</us-gaap:OtherDepreciationAndAmortization>
    <us-gaap:SegmentReportingOtherItemAmount
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1861"
      unitRef="USD">2991000</us-gaap:SegmentReportingOtherItemAmount>
    <us-gaap:SegmentReportingOtherItemAmount
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1862"
      unitRef="USD">1431000</us-gaap:SegmentReportingOtherItemAmount>
    <us-gaap:SegmentReportingOtherItemAmount
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1903"
      unitRef="USD">4422000</us-gaap:SegmentReportingOtherItemAmount>
    <us-gaap:OperatingExpenses
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1867"
      unitRef="USD">9008000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1868"
      unitRef="USD">5899000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1865"
      unitRef="USD">14907000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1873"
      unitRef="USD">181000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1874"
      unitRef="USD">969000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1871"
      unitRef="USD">1150000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeOther
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1879"
      unitRef="USD">84000</us-gaap:InterestIncomeOther>
    <us-gaap:InterestIncomeOther
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1880"
      unitRef="USD">0</us-gaap:InterestIncomeOther>
    <us-gaap:InterestIncomeOther
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1877"
      unitRef="USD">84000</us-gaap:InterestIncomeOther>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1883"
      unitRef="USD">-9000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1884"
      unitRef="USD">0</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1901"
      unitRef="USD">-9000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:OtherOperatingIncomeExpenseNet
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1887"
      unitRef="USD">6000</us-gaap:OtherOperatingIncomeExpenseNet>
    <us-gaap:OtherOperatingIncomeExpenseNet
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1888"
      unitRef="USD">-16000</us-gaap:OtherOperatingIncomeExpenseNet>
    <us-gaap:OtherOperatingIncomeExpenseNet
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1913"
      unitRef="USD">-10000</us-gaap:OtherOperatingIncomeExpenseNet>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2025-01-01to2025-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1893"
      unitRef="USD">262000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2025-01-01to2025-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1894"
      unitRef="USD">953000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1891"
      unitRef="USD">1215000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1897"
      unitRef="USD">44000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1899"
      unitRef="USD">1171000</us-gaap:NetIncomeLoss>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31_us-gaap_ServiceMember_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1833"
      unitRef="USD">7845000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31_us-gaap_ServiceMember_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1834"
      unitRef="USD">0</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31_us-gaap_ServiceMember"
      decimals="-3"
      id="fid_1835"
      unitRef="USD">7845000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1836"
      unitRef="USD">0</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31_us-gaap_SoftwareDevelopmentMember_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1837"
      unitRef="USD">5146000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31_us-gaap_SoftwareDevelopmentMember"
      decimals="-3"
      id="fid_1838"
      unitRef="USD">5146000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31_us-gaap_ProductMember_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1839"
      unitRef="USD">1295000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31_us-gaap_ProductMember_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1840"
      unitRef="USD">0</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31_us-gaap_ProductMember"
      decimals="-3"
      id="fid_1841"
      unitRef="USD">1295000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1842"
      unitRef="USD">9140000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1843"
      unitRef="USD">5146000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1821"
      unitRef="USD">14286000</us-gaap:Revenues>
    <us-gaap:EmployeeBenefitsAndShareBasedCompensation
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1847"
      unitRef="USD">4149000</us-gaap:EmployeeBenefitsAndShareBasedCompensation>
    <us-gaap:EmployeeBenefitsAndShareBasedCompensation
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1848"
      unitRef="USD">2488000</us-gaap:EmployeeBenefitsAndShareBasedCompensation>
    <us-gaap:EmployeeBenefitsAndShareBasedCompensation
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1912"
      unitRef="USD">6637000</us-gaap:EmployeeBenefitsAndShareBasedCompensation>
    <us-gaap:NoninterestExpenseCommissionExpense
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1851"
      unitRef="USD">1181000</us-gaap:NoninterestExpenseCommissionExpense>
    <us-gaap:NoninterestExpenseCommissionExpense
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1852"
      unitRef="USD">196000</us-gaap:NoninterestExpenseCommissionExpense>
    <us-gaap:NoninterestExpenseCommissionExpense
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1910"
      unitRef="USD">1377000</us-gaap:NoninterestExpenseCommissionExpense>
    <us-gaap:ProfessionalAndContractServicesExpense
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1855"
      unitRef="USD">419000</us-gaap:ProfessionalAndContractServicesExpense>
    <us-gaap:ProfessionalAndContractServicesExpense
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1856"
      unitRef="USD">398000</us-gaap:ProfessionalAndContractServicesExpense>
    <us-gaap:ProfessionalAndContractServicesExpense
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1908"
      unitRef="USD">817000</us-gaap:ProfessionalAndContractServicesExpense>
    <us-gaap:OtherDepreciationAndAmortization
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1859"
      unitRef="USD">355000</us-gaap:OtherDepreciationAndAmortization>
    <us-gaap:OtherDepreciationAndAmortization
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1860"
      unitRef="USD">483000</us-gaap:OtherDepreciationAndAmortization>
    <us-gaap:OtherDepreciationAndAmortization
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1906"
      unitRef="USD">838000</us-gaap:OtherDepreciationAndAmortization>
    <us-gaap:SegmentReportingOtherItemAmount
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1863"
      unitRef="USD">2958000</us-gaap:SegmentReportingOtherItemAmount>
    <us-gaap:SegmentReportingOtherItemAmount
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1864"
      unitRef="USD">1175000</us-gaap:SegmentReportingOtherItemAmount>
    <us-gaap:SegmentReportingOtherItemAmount
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1904"
      unitRef="USD">4133000</us-gaap:SegmentReportingOtherItemAmount>
    <us-gaap:OperatingExpenses
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1869"
      unitRef="USD">9062000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1870"
      unitRef="USD">4740000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingExpenses
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1866"
      unitRef="USD">13803000</us-gaap:OperatingExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1875"
      unitRef="USD">78000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1876"
      unitRef="USD">406000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1872"
      unitRef="USD">483000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeOther
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1881"
      unitRef="USD">5000</us-gaap:InterestIncomeOther>
    <us-gaap:InterestIncomeOther
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1882"
      unitRef="USD">0</us-gaap:InterestIncomeOther>
    <us-gaap:InterestIncomeOther
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1878"
      unitRef="USD">5000</us-gaap:InterestIncomeOther>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1885"
      unitRef="USD">-13000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1886"
      unitRef="USD">0</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1902"
      unitRef="USD">-13000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:OtherOperatingIncomeExpenseNet
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1889"
      unitRef="USD">2000</us-gaap:OtherOperatingIncomeExpenseNet>
    <us-gaap:OtherOperatingIncomeExpenseNet
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1890"
      unitRef="USD">-17000</us-gaap:OtherOperatingIncomeExpenseNet>
    <us-gaap:OtherOperatingIncomeExpenseNet
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1914"
      unitRef="USD">-15000</us-gaap:OtherOperatingIncomeExpenseNet>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2024-01-01to2024-03-31_cxdo_CloudTelecommunicationsServiceSegmentMember"
      decimals="-3"
      id="fid_1895"
      unitRef="USD">72000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2024-01-01to2024-03-31_cxdo_SoftwareSolutionSegmentMember"
      decimals="-3"
      id="fid_1896"
      unitRef="USD">389000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1892"
      unitRef="USD">461000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1898"
      unitRef="USD">27000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1900"
      unitRef="USD">434000</us-gaap:NetIncomeLoss>
    <us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock contextRef="From2025-01-01to2025-03-31" id="fid_858">&lt;table cellpadding="0" style="border-spacing:0;text-align:left;font:10pt times new roman;margin-left:auto;margin-right:auto;width:100%"&gt;&lt;tbody&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="6" style="BORDER-BOTTOM: #000000 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;Three Months Ended&lt;/strong&gt;&lt;/p&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;March 31,&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px"&gt;&lt;td&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2025&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="hdcell" colspan="2" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:center;"&gt;&lt;p style="FONT-SIZE: 10pt; FONT-FAMILY: times new roman; MARGIN: 0px 0px 0px 0in; text-align:center;"&gt;&lt;strong&gt;2024&lt;/strong&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;United States&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;15,353&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="width:9%;vertical-align:bottom;text-align:right;"&gt;13,431&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#ffffff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in"&gt;International&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;704&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 1px solid;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 1px solid;width:9%;vertical-align:bottom;text-align:right;"&gt;855&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 1px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15px;background-color:#cceeff"&gt;&lt;td style="vertical-align:top;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px 0px 0px 0in;text-indent:9pt"&gt;Total revenue&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;16,057&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;td style="BORDER-BOTTOM: 3px double;width:1%;vertical-align:bottom;white-space: nowrap;"&gt;$&lt;/td&gt;&lt;td class="ffcell" style="BORDER-BOTTOM: 3px double;width:9%;vertical-align:bottom;text-align:right;"&gt;14,286&lt;/td&gt;&lt;td style="PADDING-BOTTOM: 3px;width:1%;white-space: nowrap;"&gt;&lt;p style="font-size:10pt;font-family:times new roman;margin:0px"&gt;&#160;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31_country_US"
      decimals="-3"
      id="fid_1917"
      unitRef="USD">15353000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31_country_US"
      decimals="-3"
      id="fid_1918"
      unitRef="USD">13431000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31_cxdo_InternationalMember"
      decimals="-3"
      id="fid_1919"
      unitRef="USD">704000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31_cxdo_InternationalMember"
      decimals="-3"
      id="fid_1920"
      unitRef="USD">855000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2025-01-01to2025-03-31"
      decimals="-3"
      id="fid_1915"
      unitRef="USD">16057000</us-gaap:Revenues>
    <us-gaap:Revenues
      contextRef="From2024-01-01to2024-03-31"
      decimals="-3"
      id="fid_1916"
      unitRef="USD">14286000</us-gaap:Revenues>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
